我正在尝试将源数据文件中的值字段从currency格式化为float,并将其作为pivot表值字段的一部分求和。源文件格式为CSV。我使用pandas为枢轴设置了代码,但是难以将货币格式化字段转换为float。现在,如果我要运行此代码,则数据透视表按行和列正确格式化,但值字段很乱。
关于格式化货币字段的简单方法的任何想法?我知道我需要删除$和“,”并修剪最后一个空格,但不确定如何 - 示例数据和代码到目前为止:
代码:
import csv
import pandas as pd
import numpy as np
df = pd.read_csv('Example Data.csv')
data = df.pivot_table(index="State",values="Revenue",aggfunc=np.sum)
print data
数据集:
State,Revenue
CT,"$10,000.00 "
MA,"$20,000.00 "
MA,"$40,000.00 "
MA,"$80,000.00 "
CT,"$160,000.00 "
NY,"$320,000.00 "
NJ,"$640,000.00 "
NJ,"$1,280,000.00 "
PA,"$2,560,000.00 "
VT,"$5,120,000.00 "
答案 0 :(得分:0)
在旋转之前删除所有违规字符:
df.Revenue = df.Revenue.str.replace(r'\$|,', '').astype(float)