本系列文章配套代码获取有以下三种途径:
-
可以在以下网站查看,该网站是使用JupyterLite搭建的web端Jupyter环境,因此无需在本地安装运行环境即可使用,首次运行浏览器需要下载一些配置文件(大约20M):
https://returu.github.io/Python_Data_Analysis/lab/index.html
-
也可以通过百度网盘获取,需要在本地配置代码运行环境,环境配置可以查看【Python基础】2.搭建Python开发环境:
链接:https://pan.baidu.com/s/1MYkeYeVAIRqbxezQECHwcA?pwd=mnsj
提取码:mnsj
-
前往GitHub详情页面,单击 code 按钮,选择Download ZIP选项:
https://github.com/returu/Python_Data_Analysis
根据《Python for Data Analysis 3rd Edition》翻译整理
—————-————————————-
首先通过字典数据生成一个数据,其中包含有缺失值。
1>>> import numpy as np
2>>> import pandas as pd
3
4>>> import sys
5
6>>> data = {"A":[1,np.nan,3] , "B":[4,5,6] , "C":[7,8,9] , "D":["x","y",np.nan]}
7
8>>> df = pd.DataFrame(data)
9>>> df
10 A B C D
110 1.0 4 7 x
121 NaN 5 8 y
132 3.0 6 9 NaN
通过 DataFrame 的to_csv方法,可以将数据写入以逗号分隔的文件中。
1# 将数据写入文件
2>>> df.to_csv("./data/out.csv")
为了显示方便,在写入文件时使用 sys.stdout 以便将文本结果打印到控制台而不是文件。
1# 使用 sys.stdout , 通过控制台打印文本结果,而不是写入文件
2>>> df.to_csv(sys.stdout)
3,A,B,C,D
40,1.0,4,7,x
51,,5,8,y
62,3.0,6,9,
-
na_rep参数
通过上述输出结果,可以看到缺失值在输出中显示为空字符串。也可以使用其他标记值来表示缺失值。
1>>> df.to_csv(sys.stdout , na_rep="NULL")
2,A,B,C,D
30,1.0,4,7,x
41,NULL,5,8,y
52,3.0,6,9,NULL
-
sep参数
写入文件时,也可以使用其他分隔符。
1>>> df.to_csv(sys.stdout , sep="|" , na_rep="NULL")
2|A|B|C|D
30|1.0|4|7|x
41|NULL|5|8|y
52|3.0|6|9|NULL
-
index, header参数
默认情况下,行和列标签都会被写入文件。也可以设置为禁止写入。
1>>> df.to_csv(sys.stdout , sep="|" , na_rep="NULL" , index=False , header=False)
21.0|4|7|x
3NULL|5|8|y
43.0|6|9|NULL
5
-
columns参数
也可以只写入列的一个子集,并且按照传递的列名的顺序写入。
1>>> df.to_csv(sys.stdout , sep="|" , na_rep="NULL" , index=False , columns=["D","B","C"])
2D|B|C
3x|4|7
4y|5|8
5NULL|6|9
本篇文章来源于微信公众号: 码农设计师