【发布时间】:2018-12-21 18:42:51
【问题描述】:
我无法在 pandas 数据框中设置新值,除非它是整数。
我正在学习 pandas,并尝试在 jupyter 笔记本中构建尽可能多的 .loc 和 .iloc 案例,我遇到了第一个我不明白的问题。我可以使用 .loc 将 pandas 数据框的特定值设置为一个新值,只要它是一个整数。否则报错为什么?
onp=np.arange(1,21,1).reshape(4,5)
oindex=['concept1','concept2','concept3','concept4',]
ohead=['ep1','ep2','ep3','ep5','ep5']
data=onp
mydf=pd.DataFrame(data,index=oindex, columns=ohead)
print(mydf.loc['concept2','ep3'])
# this works fine:
mydf.loc['concept2','ep3']=233
# this does not work:
mydf.loc['concept2','ep3']='hallo'
为什么python假设数据框的值是整数? 我该怎么做才能将值更改为一种变体。我需要在熊猫随机分布的地方有文本或整数。 谢谢
顺便说一句,通过的错误是: "ValueError: 缓冲区的维数错误(预期为 1,得到 0)"
【问题讨论】:
标签: python pandas type-conversion