2
我有一个(法文)的数据集,看起来像文件作为千分隔符如下:阅读CSV与空间使用pandas.read_csv
time;col1;col2;col3
06.09.2017 05:30;329,02;5,7;259
06.09.2017 05:40;500,5;6,6;261
06.09.2017 05:50;521,73;6,7;266
06.09.2017 06:00;1 091,33;9,1;273
06.09.2017 06:10;1 262,43;10;285
我尝试使用下面的命令来阅读:
import pandas as pd
df=pd.read_csv("Example_dataset.csv",
index_col=0,
encoding='latin',
parse_dates=True,
dayfirst=True,
sep=';',
decimal=',',
thousands=' ')
col2和col3被识别为浮点数和整数,但col1不会被识别为数字,因为数千个分隔符在那里。有没有简单的方法来读取这个数据集?设置thousands=' '
似乎没有工作:
<class 'pandas.core.frame.DataFrame'>
DatetimeIndex: 5 entries, 2017-09-06 05:30:00 to 2017-09-06 06:10:00
Data columns (total 3 columns):
col1 5 non-null object
col2 5 non-null float64
col3 5 non-null int64
dtypes: float64(1), int64(1), object(1)
memory usage: 160.0+ bytes
有什么建议吗?
尝试:'df.col1 = df.col1。 str.replace('','').astype(float)' –
我刚刚测试了熊猫'0.20.1'并且你的代码有效,你使用的是哪个版本? – zipa
这没有奏效。我认为这个空间是一个'不间断的空间' 我修改你的代码如下: 'df.col1 = df.col1.str.replace('\ s +','').str.replace(', ','。')。astype(float)' – Nickj