"ValueError: NumExpr 2 does not support Unicode as a dtype."在 Python 熊猫中组合数据帧行的元素时



这就是整个代码:

states = [1,2,3,4,5,6,7,8,9,10]
for key in Zeitreihen_2.keys():
conditions = [
(Zeitreihen_2[key]["values"]<=0.1),
(Zeitreihen_2[key]["values"]>0.1) & (Zeitreihen_2[key]["values"]<=0.2),
(Zeitreihen_2[key]["values"]>0.2) & (Zeitreihen_2[key]["values"]<=0.3),
(Zeitreihen_2[key]["values"]>0.3) & (Zeitreihen_2[key]["values"]<=0.4),
(Zeitreihen_2[key]["values"]>0.4) & (Zeitreihen_2[key]["values"]<=0.5),
(Zeitreihen_2[key]["values"]>0.5) & (Zeitreihen_2[key]["values"]<=0.6),
(Zeitreihen_2[key]["values"]>0.6) & (Zeitreihen_2[key]["values"]<=0.7),
(Zeitreihen_2[key]["values"]>0.7) & (Zeitreihen_2[key]["values"]<=0.8),
(Zeitreihen_2[key]["values"]>0.8) & (Zeitreihen_2[key]["values"]<=0.9),
(Zeitreihen_2[key]["values"]>0.9) & (Zeitreihen_2[key]["values"]<=1.01), 
]
#print(Zeitreihen_2[key].head(3))
Zeitreihen_2[key]["state"] = np.select(conditions, states)
Zeitreihen_2[key]["transition"]= 0 
Zeitreihen_2[key]["start"]= 0 
Zeitreihen_2[key]["to"]= 0 

Zeitreihen_2[key]["start"] = Zeitreihen_2[key]["state"]
Zeitreihen_2[key]["to"] = Zeitreihen_2[key]["state"].shift(-1)
Zeitreihen_2[key] = Zeitreihen_2[key].dropna()

Zeitreihen_2[key]["transition"] = Zeitreihen_2[key]["state"]+ " to " +Zeitreihen_2[key]["to"]

错误只出现在最后一行。

我不确定这个操作是否被允许,但我没想到会出现这种错误。

Zeitreihen_2[key]["transition"] = Zeitreihen_2[key]["state"]+ " to " +Zeitreihen_2[key]["to"]

在上面的行中,Zeitreihen_2[key]["state"]int/float,并且类似地,Zeitreihen_2[key]["to"]int

当您试图将int与字符串("to"(连接时,会引发错误。

尝试在连接之前将int转换为str

Zeitreihen_2[key]["transition"] = Zeitreihen_2[key]["state"].astype(str) + " to " + Zeitreihen_2[key]["to"].astype(str)

Zeitreihen_2[key]["transition"] = str(Zeitreihen_2[key]["state"]) + " to " + str(Zeitreihen_2[key]["to"])

相关内容

  • 没有找到相关文章

最新更新