从与索引对齐的两个系列中获取非空字符串值的有效方法

2024-05-15 16:02:05 发布

您现在位置:Python中文网/ 问答频道 /正文

我还有两个带有nan的熊猫字符串系列,比如说:

a = pd.Series(['A', 'B', np.nan, np.nan])
b = pd.Series(['A', np.nan, 'C', np.nan])

输出要求如下:

result = ['A', 'B', 'C', np.nan]

什么样的方法最有效,最能达到预期的效果。请注意,我的系列包含100万个条目,所以最有效的方法(可能是使用numpy)也是可以接受的


Tags: 方法字符串numpynp条目resultnanseries
2条回答

我建议使用fillna

a.fillna(b)

0      A
1      B
2      C
3    NaN
dtype: object

试试这个:

print(pd.DataFrame([a,b]).apply(lambda x: next(iter(x.dropna().tolist()),np.nan),axis=0))

更好的是conbine_first

print(a.combine_first(b))

两种输出:

0      A
1      B
2      C
3    NaN
dtype: object

相关问题 更多 >