我有一个数据框,其中包含一个用欧元表示的数字列(例如:7000欧元),我想用工具.plot
在地图上显示该数据框。
df
item price
1 A 7 000 €
2 B 10 880 €
3 C 10 990 €
maps = df.plot()
maps
ValueError: could not convert string to float: '7 000 €'
我收到一条错误消息,因为它将列视为对象而不是浮点数。
df.dtypes
item object
price object
dtype: object
我首先用' €'
删除了rstrip
个字符。
df['price'] = df['price'].map(lambda x: x.rstrip(' €'))
df
item price
1 A 7 000
2 B 10 880
3 C 10 990
然后,我尝试将列转换为浮点型,但由于包含数千个分隔符(空格)(例如:7000)而无法实现。
df.price = pd.to_numeric(df.price, errors='ignore')
maps = df.plot()
maps
ValueError: could not convert string to float: '7 000'
当我将' '
替换为''
时,没有收到错误消息,但是,当我显示数据框时,我总是有分隔符,并且该列始终被视为对象(不可能绘制)
df['price'].replace(' ','', inplace=True)
df
item price
1 A 7 000
2 B 10 880
3 C 10 990
我不能摆脱这个。你能帮我吗 ? 非常感谢你。