首页 > 解决方案 > 如何使用字符串常量和数字(计数)更新 pandas 列

问题描述

我有 2 个看起来像这样的熊猫列:

Request Number         Cost Center
       1                  111
       2                  133 
       3                  156 
      NaN                 235 
      NaN                 111
      NaN                 123

对于 NaN(空值),我怎样才能让 Pandas 数据框看起来像这样:

Request Number         Cost Center
       1                  111
       2                  133 
       3                  156 
    Unknown1              235 
    Uknnown2              111
    Unknown3              123

哪里所有的空值都将采用按顺序计数的未知字符串常量的形式?

标签: python-3.xpandasnullstring-iteration

解决方案


您可以在Request Numberusing中修改空值.loc,并将字符串连接"Unknown"cumsum空值,转换为字符串:

df.loc[df['Request Number'].isnull(), 'Request Number'] = 'Unknown' + df['Request Number'].isnull().cumsum().astype(str)

>>> df
  Request Number  Cost Center
0              1          111
1              2          133
2              3          156
3       Unknown1          235
4       Unknown2          111
5       Unknown3          123

推荐阅读