首页 > 解决方案 > 如何将列中的浮点数更改为字符串 pandas

问题描述

我的数据框中的状态数据已编号。例如,11 代表 DC。我想将 11 更改为 DC 并为所有州执行此操作。

person["state"].replace({"11": "DC"}, inplace=True)

我虽然这会工作,但我得到了

无法比较类型 'ndarray(dtype=int64)' 和 'str'

标签: pythonpandas

解决方案


person["state"].astype(str).map({"11": "DC"})

这会给你一个新的专栏

如果你需要replace

person["state"].replace({11:"DC"},inplace=True)

state列被认为是int

如果要使用字符串版本本身,则必须将列转换为字符串,然后应用replace

person["state"] = person["state"].astype(str)
person["state"].replace({"11":"DC"},inplace=True)

推荐阅读