You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为Pandas DataFrame添加MergeName列:按ShortName规则填充

为Pandas DataFrame添加MergeName列的解决方案

需求:为Pandas DataFrame添加名为MergeName的列,该列默认取ShortName列文本值;若ShortName为None,则取Plaintiffs列的值。

现有DataFrame数据如下:

Plaintiffs Gender ShortName
0           None   None      None
1           None   None      None
2    Donald Duck      M      None
3   Minnie Mouse      F    Minnie
4           None   None      None
5       John Doe      M       Doe
6           None   None      None
7           None   None      None
8           None   None      None
9           None   None      None
10          None   None      None

尝试过以下代码均未成功,常出现MergeName列仅填充else分支数据(含None值)的问题:

  • 代码1:
PlaintiffsTbl['MergeName'] = np.where(PlaintiffsTbl['ShortName'] is None, PlaintiffsTbl['Plaintiffs'],  PlaintiffsTbl['ShortName'])
  • 代码2:
PlaintiffsTbl['MergeName'] = PlaintiffsTbl['ShortName']
PlaintiffsTbl.loc[PlaintiffsTbl['MergeName'] == None, 'MergeName'] = PlaintiffsTbl['Plaintiffs']
  • 代码3:
PlaintiffsTbl['MergeName'] = [PlaintiffsTbl['Plaintiffs'] if PlaintiffsTbl['ShortName'] is None else PlaintiffsTbl['ShortName']]

感谢Amir Hossein Shahdaei提供的可行代码:

PlaintiffsTbl['MergeName'] = PlaintiffsTbl['ShortName']
PlaintiffsTbl['MergeName'] = PlaintiffsTbl['MergeName'].fillna(PlaintiffsTbl['Plaintiffs'])

内容的提问来源于stack exchange,提问作者Rycliff

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 10:25:34