添加参数na_values =’?’到read_csv.
样品:
import pandas as pd
import io
temp=u"""Date Time,a
2010-01-27 16:00:00,?
2010-01-27 16:10:00,2.2
2010-01-27 16:30:00,1.7"""
df = pd.read_csv(io.StringIO(temp),na_values='?')
print (df)
Date Time a
0 2010-01-27 16:00:00 NaN
1 2010-01-27 16:10:00 2.2
2 2010-01-27 16:30:00 1.7
编辑:
谢谢‘shivsn’的建议,添加skipinitialspace = True:
temp=u"""Date Time,a
? , ?
? ,?
2010-01-27 16:30:00,1.7"""
df = pd.read_csv(io.StringIO(temp),na_values=['?', '? '], skipinitialspace =True)
print (df)
Date Time a
0 NaN NaN
1 NaN NaN
2 2010-01-27 16:30:00 1.7
EDIT1按文件:
似乎前面没有空格?:
df = pd.read_csv('census-income.data',
header = None,
na_values=['?'],
skipinitialspace =True)
print (df)