如何将df2的多行结论合并写入df指定行的Notes字段?
解决方案
核心思路
避开循环赋值导致的覆盖问题,先把df2的Conclusion列所有值合并成单个字符串(用分号或换行分隔),再一次性赋值给df中Definition为Deposit的行的Notes字段。
代码实现
先模拟示例数据(可替换为你的真实数据):
import pandas as pd # 模拟原始df df = pd.DataFrame({ 'Definition': ['Deposit', 'Withdrawal', 'Transfer'], 'Notes': ['', '', ''] }) # 模拟df2 df2 = pd.DataFrame({ 'Conclusion': ['账户余额充足', '交易记录合规', '已完成风险校验'] })
步骤1:合并df2的Conclusion列
根据需求选择分隔方式:
# 分号分隔(适合单行展示) combined_conclusion = '; '.join(df2['Conclusion'].astype(str)) # 或换行分隔(适合多行展示) # combined_conclusion = '\n'.join(df2['Conclusion'].astype(str))
步骤2:赋值到df的目标行
直接定位目标行完成赋值,无需循环:
df.loc[df['Definition'] == 'Deposit', 'Notes'] = combined_conclusion
效果验证
处理后的df(以分号分隔为例):
| Definition | Notes |
|---|---|
| Deposit | 账户余额充足; 交易记录合规; 已完成风险校验 |
| Withdrawal | |
| Transfer |
循环失效原因
循环赋值时,每次都会用单个结论覆盖Notes字段的原有内容,最终只保留最后一次循环的赋值结果。先合并所有结论再一次性赋值,就能完整保留所有内容。
内容的提问来源于stack exchange,提问作者hoa tran
相关产品推荐
相关产品推荐

