2024-09-27 07:24:36 发布
网友
你好,我有一个df,比如
COL1 COL2 SEQ1 SEQ1_67 SEQ2 NaN SEQ3 SEQ3_7788 SEQ5 SEQQ0 SEQ6 NaN SEQ7 NaN
我想用COL1对应的内容来填充COL2{}值 得到
COL1
COL2
COL1 COL2 SEQ1 SEQ1_67 SEQ2 SEQ2 SEQ3 SEQ3_7788 SEQ5 SEQQ0 SEQ6 SEQ6 SEQ7 SEQ7
使用:
df.COL2 = df.COL2.mask(df.COL1.eq(df.COL2))
或:
df.loc[df.COL1.eq(df.COL2), 'COL2'] = np.nan
print (df) COL1 COL2 0 SEQ1 SEQ1_67 1 SEQ2 NaN 2 SEQ3 SEQ3_7788 3 SEQ5 SEQQ0 4 SEQ6 NaN 5 SEQ7 NaN
对于反向Simpler,请使用^{}:
df.COL2 = df.COL2.fillna(df.COL1)
您可以使用numpy.where:
numpy.where
In [1334]: df.COL2 = np.where(df.COL2.isna(), df.COL1, df.COL2) In [1335]: df Out[1335]: COL1 COL2 0 SEQ1 SEQ1_67 1 SEQ2 SEQ2 2 SEQ3 SEQ3_7788 3 SEQ5 SEQQ0 4 SEQ6 SEQ6 5 SEQ7 SEQ7
使用:
或:
对于反向Simpler,请使用^{} :
您可以使用
numpy.where
:相关问题 更多 >
编程相关推荐