Python数据载入与文件格式
最近看了Python数据分析的内容,其中有一个章节关于数据载入与文件格式的知识,其中包含数据读取、存储以及各种格式的文件数据的载入。不仅仅在数据分析中很重要,在平时的实践中,也觉得很重要。
下面是笔记实践与总结 。
1、pandas读取表格型数据
将表格型数据读取为DataFrame对象是pandas的重要功能,pandas函数read_csv、read_table是使用的比较多的,read_table需要指定sep间隔字符。

index_col可以指定索引,。指定多列可以形成分层索引。names指定列名 。

数据表的分隔符不是固定的,read_table的sep参数可以传入正则表达式作为分隔符,多个空格的正则表达式是“\s+” 。

skiprows可以跳过指定的行里屏蔽不需要的数据或者注释行。

函数isnull判断数据是否存在空值。

python的csv模块可以有处理有单字符分隔符的数据。

2、pandas分块读取表格型数据
在对大数据操作前,可以对pandas的显示进行设置,防止一次读入大量数据到内存中。

可以通过nrows来指定一小部分行。

chunksize指定每一块的行数,返回可迭代对象,允许根据chunksize来进行遍历。这样可以根据数据块来遍历处理,对于内存使用十分友好。

下面是根据chunksize来进行遍历后对key列进行聚合计算计数值。

3、pandas写入文本文件
to_csv函数将数据导出到逗号分隔的csv文件 。

4、JSON数据格式
json数据使用标准库中的json模块,将json数据通过json.loads载入到字典构成的列表,传入DataFrame构造函数并选出数据字段的子集。

pd.read_json函数可以自动将json数据集按照指定顺序转为series或者dataframe 。to_json方法可以将数据到出为json。

5、EXCEL文件
read_excel可以读取excel文件中的数据,同时read_excel可以直接简洁的传入excel文件。

to_excel可以将数据写入到excel文件,to_excel也可以直接传递文件路径。

6、web api交互
requests.get发送一个http请求。

将data传递给DataFrame,并提取需要的字段。

7、与数据库交互
将数据库查询返回的元组的列表传给DataFrame构造函数。

pd.read_sql允许通过通用的sqlalchemy连接中方便的读取数据。sqlalchemy是一个python sql通用工具包,可以把关系数据库的表结构映射到对象上。
