大熊猫:基于具有多个值的其他列添加df列映射到相同的新列值

流动性

我有一个这样的数据框:

df1 = pd.DataFrame({'col1' : ['cat', 'cat', 'dog', 'green', 'blue']})

我想要一个提供该类别的新列,如下所示:

dfoutput = pd.DataFrame({'col1' : ['cat', 'cat', 'dog', 'green', 'blue'],
                         'col2' : ['animal', 'animal', 'animal', 'color', 'color']})

我知道我可以使用.loc以下方法低效地进行操作

df1.loc[df1['col1'] == 'cat','col2'] = 'animal'
df1.loc[df1['col1'] == 'dog','col2'] = 'animal'

我该如何结合catdog同时做到animal这不起作用:

df1.loc[df1['col1'] == 'cat' | df1['col1'] == 'dog','col2'] = 'animal'
BEN_YO

建立你的dictmap

d={'dog':'ani','cat':'ani','green':'color','blue':'color'}
df1['col2']=df1.col1.map(d)
df1
    col1   col2
0    cat    ani
1    cat    ani
2    dog    ani
3  green  color
4   blue  color

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

大熊猫基于其他列分配值

大熊猫列总数,不包括基于其他列值的某些行

大熊猫增量次数列基于其他列的值

大熊猫:基于列值查找df中的事件首次发生并标记为新列值

大熊猫合并具有南值的列

从大熊猫其他列的聚集创建新列

大熊猫:从另一列基于密钥的现有列映射字典的值替换为NaN

大熊猫:使用其他两列中的任何一个添加新列

熊猫DF。将值映射到新列,但行不同。DF有多重指数

大熊猫从其他2列中删除列值

大熊猫中是否有任何包装可以基于其他列计算列值的所选部分的平均值

大熊猫-基于列值合并几乎重复的行

大熊猫:合并具有相同列名的大熊猫列

如何漂亮地格式化大熊猫中的列和值,使它们具有相同的宽度?

大熊猫:使用多个列值过滤行

大熊猫将嵌套值与其他列一起切片

给定值列表的大熊猫在列中查找具有此值的行

根据其他列值在熊猫中添加新列

熊猫:使用其他列的迭代值添加新列

大熊猫保存的元组的值列

大熊猫从列中删除值

大熊猫:根据多个条件计算新列中的新值,适用于多个列而不循环

在 R 中同时为多个文件添加基于其他列中的随机值的新列

大熊猫:将所有具有2个值的列转换为True / False

根据具有多个值的其他列中的值创建新列

每行大熊猫数据框中的前k列具有值

大熊猫获得具有一定值的行的列平均值?

Pandas df操作:如果重复其他列行,则为具有值列表的新列

大熊猫:从现有的列值创建一个新的数据框