gpt4 book ai didi

python - 更改类型(pandas dataframe)时如何处理 'invalid literal for int() with base 10'?

转载 作者:行者123 更新时间:2023-12-01 06:40:25 26 4
gpt4 key购买 nike

我在 Pandas DataFrame 中有这样的列:

data = pd.DataFrame({"consume":["11", "14", "11,5", "12,6"]})

我想更改这个系列的类型。目前,它的类型为 object,但我需要它是 float64int64。如何更改列的类型?我应该在 int64float64 上更改它吗?

当我尝试这样做时:

data['consume'] = data['consume'].astype('int64')

我收到错误:ValueError:以 10 为基数的 int() 的文字无效:'4,2'

最佳答案

所以很明显你不能转换为整数,因为你的字符串中有一个逗号。 (顺便说一句,你真的需要 int64 吗?那太大了)我想 float 就可以了,所以你可以使用这一行来做到这一点,实际上用点替换逗号,然后将其转换为 float64 (float32 可以更好)

data['consume'] = data['consume'].str.replace(',','.').astype('float64')

关于python - 更改类型(pandas dataframe)时如何处理 'invalid literal for int() with base 10'?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59481879/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com