删除重复的pandas数据帧
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了删除重复的pandas数据帧相关的知识,希望对你有一定的参考价值。
我使用drop_duplicates从我的数据帧中删除重复列时收到错误消息。
ValueError: Buffer has wrong number of dimensions (expected 1, got 2)
下面是一个最小的例子(注意我这里没有重复的列名,因为那个列不会被添加,所以我的var1在我的实际数据帧中称为var0)
dict1 = [{'var0': 0, 'var1': 0, 'var2': 2},
{'var0': 0, 'var1': 0, 'var2': 4},
{'var0': 0, 'var1': 0, 'var2': 8},
{'var0':0, 'var1': 0, 'var2': 12},]
df = pd.DataFrame(dict1, index=['s1', 's2','s1','s2'])
df.T.drop_duplicates().T
答案
问题在于您的索引,当您转置DataFrame时,您将获得重复的列名称,这些名称正在搞乱它。见下文
dict1 = [{'var0': 0, 'var1': 0, 'var2': 2},
{'var0': 0, 'var1': 0, 'var2': 4},
{'var0': 0, 'var1': 0, 'var2': 8},
{'var0':0, 'var1': 0, 'var2': 12},]
df = pd.DataFrame(dict1, index=['s1', 's2','s1','s2'])
df.reset_index().T.drop_duplicates().T.set_index('index')
以上是关于删除重复的pandas数据帧的主要内容,如果未能解决你的问题,请参考以下文章