繁体   English   中英

Python:将分类变量的值替换为数据框中的其他值

[英]Python: replace values of a categorical variable to something else in a data frame

我有一个 pandas 数据框,其中有一列名为 label 的分类类型,具有三个类别: ('>5', '<30', 'NO') 我想将('>5','<30')这两个类别更改为“是” ,但我似乎无法弄清楚如何。 我想用 python 和 dtale (python 包)来做到这一点。

我已经设法通过这种方式在 python 中做到了:

label_changed = {"label": {">5": "YES", "<30": "YES"}}
bp = bp.replace(label_changed)

有没有其他更有效的方法来做到这一点?

此外,我还没有设法使用 dtale 做到这一点。

您可以使用replace()并传递一个包含要替换的值的列表,然后传递带有替换的参数,当您想用一个唯一的值替换多个值时,它有点整洁:

to_replace = [">5","<30"]
bp = bp.replace(to_replace,"Yes")

您也可以使用“替换”function 在 D-Tale 中执行此操作。 您可以通过单击主数据网格中列的名称,然后单击“替换”来使用此功能。

从那里,您可以就地编辑您的列或创建一个新列(这样您就不会丢失原始数据)。 然后按照以下步骤操作:

  • 选择“值”(这是默认值)
  • 在“搜索”中输入>5
  • 保持选中“Raw”并在文本输入框中输入Yes
  • 点击“+”按钮
  • 在“搜索”中输入<30
  • 保持选中“Raw”并在文本输入框中输入Yes
  • 点击“+”按钮
  • 点击“替换”

如果您也单击主菜单中的“代码导出”按钮,则应该向您显示构建新列或更新列的代码。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM