Duplication type:Check this column only (default)Check other columns onlyCheck all columnsUse Last Value:True - retain the last duplicate valueFalse - retain the first of the duplicates (default)
此规则应向数据框添加新列,该列包含与任何唯一列的源列相同的列,并且对于任何重复列都为null.
基本代码是df.loc [df.duplicated(),get_unique_column_name(df,“clean”)] = df [get_column_name(df,column)],其中参数为duplicated(),基于复制类型设置
请参阅上述此功能的参考:http://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.duplicated.html
您应该根据duplication_type的设置在subset参数中指定列
您应该根据上面的use_last_value指定use_last_value
这是我的档案.
Jason Miller 42 4 25Tina Ali 36 31 57Jake Milner 24 2 62Jason Miller 42 4 25Jake Milner 24 2 62Amy Cooze 73 3 70Jason Miller 42 4 25Jason Miller 42 4 25Jake Milner 24 2 62Jake Miller 42 4 25
我希望通过在pandas.in中使用以下文件得到这样的我选择了2列.
Jason Miller 42 4 25Jake Ali 36 31 57Jake Milner 24 2 62Jason Miller 4 25Jake Milner 2 62Jake Cooze 73 3 70Jason Miller 4 25Jason Miller 4 25Jake Milner 2 62Jake Miller 4 25
请有人回复我的问题.
解决方法 您可以使用DF.duplicated
并指定列C的值,其中第一个出现的值沿着列A和B出现. 然后,您可以填充使用空字符串生成的Nans以生成所需的数据帧.
df = pd.read_csv(data,delim_whitespace=True,header=None,names=['A','B','C','D','E'])df.loc[~df.duplicated(),"C'"] = df['C']df.fillna('',inplace=True)df = df[["A","B","C'","D","E"]]print(df) A B C' D E0 Jason Miller 42 4 251 Tina Ali 36 31 572 Jake Milner 24 2 623 Jason Miller 4 254 Jake Milner 2 625 Amy Cooze 73 3 706 Jason Miller 4 257 Jason Miller 4 258 Jake Milner 2 629 Jake Miller 42 4 25
另一种方法是获取重复列的子集,并用空字符串替换相关列.然后,您可以使用update
使用原始df修改数据框.
In [2]: duplicated_cols = df[df.duplicated(subset=['C','E'])]In [3]: duplicated_colsOut[3]: A B C D E3 Jason Miller 42 4 254 Jake Milner 24 2 626 Jason Miller 42 4 257 Jason Miller 42 4 258 Jake Milner 24 2 629 Jake Miller 42 4 25In [4]: duplicated_cols.loc[:,'C'] = ''In [5]: df.update(duplicated_cols)In [6]: dfOut[6]: A B C D E0 Jason Miller 42 4.0 25.01 Tina Ali 36 31.0 57.02 Jake Milner 24 2.0 62.03 Jason Miller 4.0 25.04 Jake Milner 2.0 62.05 Amy Cooze 73 3.0 70.06 Jason Miller 4.0 25.07 Jason Miller 4.0 25.08 Jake Milner 2.0 62.09 Jake Miller 4.0 25.0总结
以上是内存溢出为你收集整理的python – 添加新列并删除重复项,以便逐列替换空值全部内容,希望文章能够帮你解决python – 添加新列并删除重复项,以便逐列替换空值所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)