最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

pandas 将两列与空值组合在一起

SEO心得admin36浏览0评论
本文介绍了 pandas 将两列与空值组合在一起的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

我有一个包含两列的 df,我想合并两列而忽略 NaN 值.问题是有时两列都有 NaN 值,在这种情况下,我希望新列也有 NaN.示例如下:

I have a df with two columns and I want to combine both columns ignoring the NaN values. The catch is that sometimes both columns have NaN values in which case I want the new column to also have NaN. Here's the example:

df = pd.DataFrame({'foodstuff':['apple-martini', 'apple-pie', None, None, None], 'type':[None, None, 'strawberry-tart', 'dessert', None]}) df Out[10]: foodstuff type 0 apple-martini None 1 apple-pie None 2 None strawberry-tart 3 None dessert 4 None None

我尝试使用 fillna 并解决这个问题:

I tried to use fillna and solve this :

df['foodstuff'].fillna('') + df['type'].fillna('')

我得到:

0 apple-martini 1 apple-pie 2 strawberry-tart 3 dessert 4 dtype: object

第 4 行变成了空值.在这种情况下我想要的是 NaN 值,因为两个组合列都是 NaN.

The row 4 has become a blank value. What I wan't in this situation is a NaN value since both the combining columns are NaNs.

0 apple-martini 1 apple-pie 2 strawberry-tart 3 dessert 4 None dtype: object

推荐答案

使用 fillna 在一列上,填充值为另一列:

Use fillna on one column with the fill values being the other column:

df['foodstuff'].fillna(df['type'])

结果输出:

0 apple-martini 1 apple-pie 2 strawberry-tart 3 dessert 4 None
发布评论

评论列表(0)

  1. 暂无评论