我正在使用以下方法从数据框中删除行中的重复数据:
df = pd.DataFrame(list(map(pd.unique, df.values)))
但是,这将更改原始列名的数据位置,并且在读取数据时由于所有内容均被移动而读取错误。取而代之的是删除数据,而是在其中放置一个值(例如“ none”)以使其更易于过滤。
数据框:
T1583.005 T1583.006 Resource Development Resource Development T1583.001 T1583.002
T1584.005 T1584.006 Resource Development Resource Development T1584.005 T1584.002
目前:
T1583.005 T1583.006 Resource Development T1583.001 T1583.002
T1584.005 T1584.006 Resource Development T1584.002
预期:
T1583.005 T1583.006 Resource Development None T1583.001 T1583.002
T1584.005 T1584.006 Resource Development None None T1584.002
这样,数据将保持在其原始位置,并且更易于读取。
这是通过屏蔽duplicated
每行的值来完成的一种方法:
df.mask([df.loc[idx].duplicated().tolist() for idx in df.index])
0 1 2 3 4 5
0 T1583.005 T1583.006 Resource Development NaN T1583.001 T1583.002
1 T1584.005 T1584.006 Resource Development NaN NaN T1584.002
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句