【发布时间】:2019-10-16 09:03:51
【问题描述】:
df = {'A':[3, 4, 5, np.nan, 6, 7],
'B':[np.nan, 4, np.nan, np.nan, 6, 7]}
我有一个包含两列 A 和 B 的数据框。我想创建一个新列 C,这是检查 A 和 B 是否相同的结果,如果它们相同,则保留它,但如果一个为 NaN,则保留其他值。 A 列和 B 列始终是值或 NaN。 A 和 B 中的值始终相同。
我知道如何检查A和B是否相同:
df['C'] = (df['A'] == df['B]).astype('object')
但这在 C 列中给出了一个布尔答案,无论是真还是假。我的预期输出是:
A B C
3 NaN 3
4 4 4
5 NaN 5
NaN NaN NaN
6 6 6
7 7 7
【问题讨论】:
-
当 A 列和 B 列具有不同的值(即不为 NaN 且不等于)时需要什么?
-
啊,是的 - 我将编辑帖子,但它们始终是 NaN 或值,值将始终相同。