2024-06-09 16:37:39 发布
网友
我将csv文件读入pandas数据框,并将所有列类型作为对象。我需要将第二列和第三列转换为float
我试着用
df["Quantidade"] = pd.to_numeric(df.Quantidade, errors='coerce')
但是我得到了NaN
这是我的数据框。我是否需要在第三列中使用一些正则表达式来去掉“R$”
试试这个:
# sample dataframe d = {'Quantidade':['0,20939', '0,0082525', '0,009852', '0,012920', '0,0252'], 'price':['R$ 165.000,00', 'R$ 100.000,00', 'R$ 61.500,00', 'R$ 65.900,00', 'R$ 49.375,12']} df = pd.DataFrame(data=d)
# Second column df["Quantidade"] = df["Quantidade"].str.replace(',', '.').astype(float) #Third column df['price'] = df.price.str.replace(r'\w+\$\s+', '').str.replace('.', '')\ .str.replace(',', '.').astype(float)
输出:
Quantidade price 0 0.209390 165000.00 1 0.008252 100000.00 2 0.009852 61500.00 3 0.012920 65900.00 4 0.025200 49375.12
试着这样做:
df["Quantidade"] = df["Quantidade"].str.replace(',', '.').astype(float)
df['Quantidade']=df['Quantidade'].aType(浮点)
试试这个:
输出:
试着这样做:
df['Quantidade']=df['Quantidade'].aType(浮点)
相关问题 更多 >
编程相关推荐