首页 > 后端开发 > Python教程 > 如何根据现有列的值在 Pandas 中创建新列?

如何根据现有列的值在 Pandas 中创建新列?

Mary-Kate Olsen
发布: 2024-12-27 21:14:14
原创
676 人浏览过

How Can I Create a New Column in Pandas Based on Values from an Existing Column?

使用从现有列中选择的值创建新列

从现有列中选择特定值来填充新列是常见的数据操作任务。让我们探索使用 Pandas 在 Python 中实现此目的的两种方法。

方法 1:np.where 用于两个选择

当只有两个选项可供选择时, np.where 函数是一个方便的选择。在提供的示例中,我们希望为 Set 列中等于“Z”和“红色”的值创建一个带有“绿色”的颜色列。

df['color'] = np.where(df['Set']=='Z', 'green', 'red')
登录后复制

方法 2:np .select 用于多项选择

对于有两个以上选择的场景,np.select 提供了更大的灵活性。让我们介绍一下颜色列的更多条件:

  • 'yellow' for when (df['Set'] == 'Z') & (df['Type'] == 'A')
  • 'blue' 表示当 (df['Set'] == 'Z') & (df['Type'] == 'B')
  • '紫色' 表示 (df['Type'] == 'B')
  • '黑色' 表示所有其他情况

该场景的代码如下:

conditions = [
    (df['Set'] == 'Z') & (df['Type'] == 'A'),
    (df['Set'] == 'Z') & (df['Type'] == 'B'),
    (df['Type'] == 'B')]
choices = ['yellow', 'blue', 'purple']
df['color'] = np.select(conditions, choices, default='black')
登录后复制

这种方法可以轻松自定义要选择的条件和值,使得适合更复杂的场景。

以上是如何根据现有列的值在 Pandas 中创建新列?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板