【发布时间】:2017-06-23 20:16:29
【问题描述】:
我正在尝试编写一个函数,该函数通过一个充满浮点数的 pandas df 系列,并根据它们在系列范围内的位置将它们转换为四个字符串分类变量之一。因此,范围四分位数中的所有值都将转换为低、低中、高中或高。我已经完成了很多方法,但不断收到各种错误消息。最新尝试及其消息如下。如果有人可以偷看并抛出任何想法/修复,我将不胜感激。谢谢!
def makeseriescategorical(x):
for i in x:
if i < 59863.0:
str(i)
i.replace(i, "low")
elif i > 59862.0 and i < 86855.0:
str(i)
i.replace(i, "low_mid")
elif i > 86854.0 and i < 125250.0:
str(i)
i.replace(i, "high_mid")
elif i > 125249.0 and i < 332801:
str(i)
i.replace(i, "high")
我在最后一次尝试时收到的错误消息是: AttributeError: 'numpy.float64' 对象没有属性 'replace'
我尝试了各种其他方法来使其成为字符串,例如 astype,但我不断收到错误消息。我是编码新手,所以我确信我很有可能犯了一个愚蠢的错误,但我很感激任何人都可以给我的帮助。干杯。
【问题讨论】:
-
你如何分类
59862.5?