如何在Python中用if-else逻辑为数据集新增Article_Title字段
实现方案
1. Python Pandas 处理
你可以直接使用Pandas内置的combine_first方法快速实现需求,代码如下:
import pandas as pd # 读取数据集后执行以下代码 df['Article_Title'] = df['title'].combine_first(df['thread_title'])
如果需要显式写判断逻辑方便后续调整规则,也可以用np.where实现:
import numpy as np df['Article_Title'] = np.where( df['title'].notna(), df['title'], np.where(df['thread_title'].notna(), df['thread_title'], np.nan) )
2. SQL 处理
如果是在SQL环境中处理,可以直接用COALESCE函数匹配需求,查询时生成新字段即可:
SELECT *, COALESCE(title, thread_title) AS Article_Title FROM 你的数据集表名
逻辑说明
以上两种实现完全匹配要求的规则:
- 当
title字段不为空时,Article_Title直接取title的内容 - 当
title为空、thread_title不为空时,Article_Title取thread_title的内容 - 如果两个字段都为空,
Article_Title会返回空值
内容的提问来源于stack exchange,提问作者Ellen Taylor
相关产品推荐
相关产品推荐

