python - 根据条件从另一列复制值

标签 python pandas numpy conditional-statements series

对此我真的很陌生。我试图创建一个“最终类别”列,主要复制“类别 1”列中的值,但有一个条件,如果类别 1 是金融,但类别 2 是房地产,我必须复制房地产。

我认为应该有一个比使用这个更好的条件语句:

df[ (df.Category 1=='Financials') & (df.Category 2=='Real Estate') ]['Final Category'] = 'Real Estate'

最佳答案

您可以使用np.whereavoid chained assignment :

condition = df['Category 1'].eq('Financials') & df['Category 2'].eq('Real Estate')
df['Final Category'] = np.where(condition, 'Real Estate', df['Category 1'])

关于python - 根据条件从另一列复制值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53549695/

相关文章:

python 生成器返回 ndarray

python - SymPy 表达式的 `subs` 方法的 `evalf` 参数到底是做什么用的?像 `s.evalf(subs={...})` 吗?

python - 从字符串中删除变音符号以实现搜索功能

python - numpy - 多维网格

python - 在 Python XML 解析中保留转义字符

python - 在时间序列预测中将对象类型转换为日期时间

Python numpy 总和 (-1)

python - 如何防止登录用户访问 Django 1.9 版本中的 'Log In' 或 'Sign Up' 页面?

python - SQL 到等效的 pandas

python - 计算 Pandas 数据框列组合之间距离的有效方法