【发布时间】:2019-06-15 11:12:27
【问题描述】:
我试图通过转换对象数据类型dtypes('O') 来获取int 值。我需要在代码中写什么以避免错误:invalid literal for int() with base 10:
df.Weekly_Sales.head()
0 24924,5
1 46039,49
2 41595,55
3 19403,54
4 21827,9
Name: Weekly_Sales, dtype: object
dataset['weeklySales'] = dataset['weeklySales'].replace(np.nan, '', regex=True).str.replace(',','')
现在我有以下内容,但作为 obj 类型。
0 249245
1 4603949
2 4159555
3 1940354
4 218279
Name: Weekly_Sales, dtype: object
我试过了,
df['Weekly_Sales'].astype(str).astype('int64')
和
df['Weekly_Sales'].astype(int)
仍然收到错误: ValueError: int() 以 10 为底的无效文字:''
【问题讨论】:
-
您是否知道逗号很可能是小数分隔符,并且这样做会有效地使您的数据变得毫无意义?
-
@coldspeed 是的,我知道。我的目的是将str转换为int。
标签: python python-3.x dataframe types pandas-groupby