如何摆脱我们熊猫数据框中的相等列?
Posted
技术标签:
【中文标题】如何摆脱我们熊猫数据框中的相等列?【英文标题】:how to get ride of equal column in our panda data frame? 【发布时间】:2022-01-15 16:25:06 【问题描述】:我有三个大小为 df1=(176, 5766) df2=(8, 5766) df3=(16, 5766) 的数据框,尽管列名不同,但在我的列中存在相似的数据值(所有列在每三个都相等),但是当我使用例如
df1.T.drop_duplicates().T
df2.T.drop_duplicates().T
df3.T.drop_duplicates().T
虽然它必须创建相同的输出列,但它会将 df1=(176, 581) df2=(8, 632) df3=(16, 622) 我怎样才能驾驭这个?
【问题讨论】:
您的意思是要保留所有 3 个数据框中存在的列并从所有数据框中删除其余列?所以基本上你在所有这些中留下了相同数量的列? 不,我的意思是我想删除值列(不是名称列)方面的相似列,因为所有三个数据框都是相似的列,但只是行号不同。但是当您等待时,通过上述方法删除相似列后,它们在输出中的列号必须相同,但不是? 【参考方案1】:语法: df.drop_duplicates(subset=None, keep='first', inplace=False)
参数:
子集:Subset 采用列或列标签列表。它的默认值为无。传递列后,它只会将它们视为重复项。
保留:keep 是控制如何考虑重复值。它只有三个不同的值 - first、last 和 false。默认为“第一”。 ‘first’,它认为第一个值是唯一的,其余相同的值是重复的。
就地:布尔值,如果为真则删除重复行。
# dropping duplicate values
df1.drop_duplicates(keep=False,inplace=True)
df2.drop_duplicates(keep=False,inplace=True)
df3.drop_duplicates(keep=False,inplace=True)
【讨论】:
谢谢promila,但我想删除相似的列,而不是原始列,您建议不要删除所有三个中的相似列?以上是关于如何摆脱我们熊猫数据框中的相等列?的主要内容,如果未能解决你的问题,请参考以下文章