简单问题:我有一个数据集,从csv文件导入,包含一个带有数值的字符串列。逗号后是小数位。 我想将其转换为浮点数。基本上,就是这样:x = ['27,10083'] df = pd.DataFrame(x) df.astype(float) 为什么这个不起作用,如何解决这个简单的问题? 先行谢过。
使用replace函数将输出赋值给: df = df.replace(',','.', regex=True).astype(float) 如果想要指定要转换的列:cols = ['col1','col2'] df[cols] = df[cols].replace(',','.', regex=True).astype(float) 另一个解决方案是在read_csv中使用参数decimal=',',然后列就会正确地解析为浮点数:df = pd.read_csv(file, decimal=',')
read_csv
中使用以下参数:skiprows = 9,sep = None,decimal = ',',engine = 'python'
,但是十进制不起作用。有什么想法为什么? - Newskooler