首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python:如何在dataframe中合并/连接来自2列的值

Python:如何在dataframe中合并/连接来自2列的值
EN

Stack Overflow用户
提问于 2022-02-01 13:34:30
回答 2查看 76关注 0票数 0

我已经找了一段时间了,但我似乎找不到这个小问题的答案。

我希望将map列中值的内容输入到address列中,这样address列中的null值就会被map列中的值填充。

代码语言:javascript
复制
data_bio_dewasa = {'nama':['Sandy','Toni','Jami','Juda', 'Wong'],
            'age':[21, 32, 43, 26, 28],
            'address':[np.nan, 'tanjung duren', np.nan, 'kokas', np.nan],
            'food':['pizza','burger','bakso','mie ayam','seblak'],
            'edukasi':['s1','s2','d3','sma','s3'],
            'status':['pacaran','single','menikah','pelajar','mahasiswa'],
            'map':['banten',np.nan,'medan',np.nan,'kalimantan']
           }

df_bio_dewasa = pd.DataFrame(data_bio_dewasa)
df_bio_dewasa

我的预期输出应该是:(最初为空/nan的address列将用map列中的值填充)

代码语言:javascript
复制
    nama    age   address          food     edukasi   status       map
0   Sandy   21    banten           pizza      s1      pacaran     banten
1   Toni    32   tanjung duren    burger      s2      single       NaN
2   Jami    43     medan           bakso      d3      menikah      medan
3   Juda    26     kokas          mie ayam    sma     pelajar      NaN
4   Wong    28    kalimantan       seblak     s3      mahasiswa   kalimantan

如何编程来产生这样的输出?

EN

回答 2

Stack Overflow用户

发布于 2022-02-01 13:36:36

只需使用"map“列fillna "address”列:

代码语言:javascript
复制
df_bio_dewasa['address'] = df_bio_dewasa['address'].fillna(df_bio_dewasa['map'])

产出:

代码语言:javascript
复制
    nama  age        address      food edukasi     status         map
0  Sandy   21         banten     pizza      s1    pacaran      banten
1   Toni   32  tanjung duren    burger      s2     single         NaN
2   Jami   43          medan     bakso      d3    menikah       medan
3   Juda   26          kokas  mie ayam     sma    pelajar         NaN
4   Wong   28     kalimantan    seblak      s3  mahasiswa  kalimantan
票数 0
EN

Stack Overflow用户

发布于 2022-02-01 13:36:42

只需使用.fillna()

代码语言:javascript
复制
df_bio_dewasa['address'] = df_bio_dewasa['address'].fillna(df_bio_dewasa['map'])

给予:

代码语言:javascript
复制
    nama  age        address      food edukasi     status         map
0  Sandy   21         banten     pizza      s1    pacaran      banten
1   Toni   32  tanjung duren    burger      s2     single         NaN
2   Jami   43          medan     bakso      d3    menikah       medan
3   Juda   26          kokas  mie ayam     sma    pelajar         NaN
4   Wong   28     kalimantan    seblak      s3  mahasiswa  kalimantan
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70941433

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档