我有以下要导入到Pandas DataFrame中的CSV文件
这里没有显示,但是数据类型是字符串。
因此,当我尝试启动DataFrame时尝试将数据类型更改为整数时,会出现错误:
DTYPES = {
'Money(ILS)': TypesConsts.FLOAT,
'Money(USD) ': TypesConsts.FLOAT,
'Total Invested(USD) ': TypesConsts.FLOAT,
'Nominal(USD)': TypesConsts.FLOAT,
'Realized(USD)': TypesConsts.FLOAT,
'Years Past(Years)': TypesConsts.FLOAT,
'Tot Time(Years)': TypesConsts.FLOAT,
'Charges(USD)': TypesConsts.FLOAT,
'Actual Money(USD)': TypesConsts.FLOAT,
'VHVE(Amount)': TypesConsts.INT,
'VHVE(Purchase)': TypesConsts.FLOAT,
'VHVE(Per Unit)': TypesConsts.FLOAT,
'AAPL(Amount)': TypesConsts.INT,
'AAPL(Purchase)': TypesConsts.FLOAT,
'AAPL(Per Unit)': TypesConsts.FLOAT,
'Margin left(USD)': TypesConsts.FLOAT,
'Margin added(ILS)': TypesConsts.FLOAT,
'Gross Profit(USD)': TypesConsts.FLOAT,
'Net. Profit(USD)': TypesConsts.FLOAT,
'Total Charges': TypesConsts.FLOAT
}
DATES_COL = ['Date']
class OrderData:
df = pd.read_csv(PATH,
dtype=DTYPES,
parse_dates=DATES_COL
)
我收到以下错误:
ValueError: could not convert string to float: '₪77,000.00'
在启动DataFrame之后,我不想在每一列中都使用pd.astype。
那么我可以在创建DataFrame时更改数据类型吗?
答案 0 :(得分:0)
由于Unicode字符,您的错误即将到来,因此无法将其转换为$lower = mb_strtolower($name,"UTF-8");
$first = $lower[0];
$profile_image = $first.".jpg";
。在尝试转换为float
之前,请先清洁字符串。