第6章 数据加载、存储与文件格式(Part2)
目录
csv文件输出
to_csv方法
利用DataFrame中的to_csv方法,我们可以将数据写到一个以逗号分隔的文件中。
,something,a,b,c,d,message
0,one,1,2,3.0,4,
1,two,5,6,,8,world
2,three,9,10,11.0,12,foo
我们读入如上csv文件:
file = 'ex5.csv'
data = pd.read_csv(file, index_col = 0)
将储存数据的DataFrame输入到out.csv中:
data.to_csv('out.csv')
结果:
In [274]: data
Out[274]:
something a b c d message
0 one 1 2 3.0 4 NaN
1 two 5 6 NaN 8 world
2 three 9 10 11.0 12 foo
In [275]: !type out.csv
,something,a,b,c,d,message
0,one,1,2,3.0,4,
1,two,5,6,,8,world
2,three,9,10,11.0,12,foo
注意,输出DataFrame的时候,会默认输出行、列标签。
index、header参数
当然,如果你不想输出行、列标签,可以分别用index、header属性禁用:
#code
data.to_csv('out.csv', index = False, header = False)
#output
one,1,2,3.0,4,
two,5,6,,8,world
three,9,10,11.0,12,foo
sep参数
自定义分隔符
#code
data.to_csv('out.csv', sep = '|')
#output
|something|a|b|c|d|message
0|one|1|2|3.0|4|
1|two|5|6||8|world
2|three|9|10|11.0|12|foo
na_rep参数
缺失值在输出结果中被表示为空字符串。你可能希望其被表示为别的字符串:
#code
data.to_csv('out.csv', na_rep = 'EMMM')
#output
,something,a,b,c,d,message
0,one,1,2,3.0,4,EMMM
1,two,5,6,EMMM,8,world
2,three,9,10,11.0,12,foo
columns参数
书上为cols,应该是以前的版本的名称,或是随版本更替被columns取代。columns参数可以让你只写出部分列,并按指定顺序排列:
#code
data.to_csv(&