python-3.x - 如何用多个数据框列的值替换列中的值
问题描述
在我的数据框中,我有多个列,我想将其值替换为一列。例如,我希望 MEDICATIONS: 中的 NaN 值如果存在于除 MEDICATION 之外的任何其他列中,则将其替换为一个值:
输入:
预期输出:
`
df['MEDICATIONS'].combine_first(df["除MEDICATIONS之外的其他列:"])
`
数据集链接:
https://drive.google.com/file/d/1cyZ_OWrGNvJyc8ZPNFVe543UAI9snHDT/view?usp=sharing
解决方案
像这样的东西?
import pandas as pd
df = pd.read_csv('data - data.csv')
del df['Unnamed: 0']
df['Combined_Meds'] = df.astype(str).values.sum(axis=1)
df['Combined_Meds'] = df['Combined_Meds'].str.replace('nan', '', regex=False)
cols = list(df.columns)
cols = [cols[-1]] + cols[:-1]
df = df[cols]
df.sample(10)
推荐阅读
- c# - C# RegEx 匹配特定字符串
- python - 外部库导入依赖时本地文件优先
- powershell - 当帐户来自域 A 并且组来自域 B 时如何删除成员?
- python - 在 Numpy 中以编程方式沿其所有轴裁剪数组
- php - 将数量链接到 Woocommerce 中的产品变体
- python - 使用 SQLAlchemy 将用户和限制计数添加到 SQL
- postgresql - 在没有原始 SQL 的情况下在 Ecto 中使用 Postgres UPDATE ... FROM
- python - 如何检测 sampleID 中的异常值
- javascript - Javascript:按属性从具有重复元素的数组构造数组
- android - 如何在已经活跃的应用程序中开发一项功能(需要 Facebook 的 user_friends 权限)?