首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >将类别特定值指定为新列中的观测值

将类别特定值指定为新列中的观测值
EN

Stack Overflow用户
提问于 2021-01-23 07:29:26
回答 1查看 23关注 0票数 1

当在类别列中选择类别Unknown1时,我将值"x“赋值给列'Superkingdom_name‘中的所有观测值。

代码语言:javascript
运行
AI代码解释
复制
df.loc[df['class'] == "Unknown1", 'Superkingdom_name'] = "x"

类似地,对于将值Y赋值给Unknown2,我这样做

代码语言:javascript
运行
AI代码解释
复制
df.loc[df['class'] == "Unknown2", 'Superkingdom_name'] = "y"

问:我们可以对多个类别执行此操作吗?但不是手动的。我们可以循环它吗?而不是像下面这样对每个类别执行以下操作:

代码语言:javascript
运行
AI代码解释
复制
df.loc[df['class'] == "Unknown1", 'Superkingdom_name'] = "x"
df.loc[df['class'] == "Unknown2", 'Superkingdom_name'] = "y"
df.loc[df['class'] == "Unknown2", 'Superkingdom_name'] = "z"

我可以在"Class“列中创建一个类别列表,并使其成为一个可迭代的类似

代码语言:javascript
运行
AI代码解释
复制
df["class"].unique().tolist()

-> "Unknown1","Unknown2","Unknown3“

但是我不知道如何在for循环中为"Superkingdom_name“赋值。

EN

回答 1

Stack Overflow用户

发布于 2021-01-23 08:15:14

尝试使用replace()。

代码语言:javascript
运行
AI代码解释
复制
df['Superkingdom_name']= df['class'].replace(['Unknown1','Unknown2','Unknown3'],['x','y','z'])
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65856811

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档