====== 数据准备 ====== ===== 学习目标 ===== - 掌握pandas中各类数据的导入方法 - 掌握pandas中各类数据的导出方法 ---- ===== 学习内容 ===== 该部分内容主要讲述如何读取外部数据以及如何向外部写入数据。 ==== 数据导入 ==== 数据存在的形式多种多样,有文件(TXT、CSV、Excel)和数据库(MySQL、Access、SQL Server)等形式。数据分析离不开数据,面对如此多种类的格式该怎样导入呢? === TXT文件的导入 === TXT文件的导入方法是:使用read_table()函数来读取文本文件。 一般语句格式如下: read_table(filepath,sep='0\t',header='infer',names=None,index_col=None,dtype=None,encoding=utf-8,engine=None,nrows=None) 其中参数可作如下理解 ^ 参数 ^ 说明 ^ | filepath | string,读取文件的路径。 | | sep | string,代表分隔符。默认为制表符。 | | header | int或sequence。指定某行数据为列名。默认infer为自动识别。 | | names | array。表示列名。 | | index_col | int,sequence或False。表示索引列的位置。 | | dtype | dict。代表写入数据的类型。 | | engine | C或Python。代表数据解析引擎。默认为C。 | | nrows | int。表示读取前n行。 | 练习:使用read_table()函数读取素材包中的book.txt文档,并陈列信息。 === CSV文件导入 === CSV文件读取使用read_csv()函数,其基本与read_table()一致,仅有默认切割符号不一样: - read_table默认是'\t'(也就是tab)切割数据集的; - read_csv 默认是 ',' (也就是逗号)切割数据集的! === Excel文件导入 === Excel文件的导入需要使用read_excel()函数。可接收的文件类型为“xls”和“xlsx”。 除了参数里多了一个sheetname(指定Excel工作簿中工作表的位置),其他都一样。 === MySql数据库的导入 === 从MySql数据库读取数据需要以下步骤: - 导入MySQLdb模块 - 连接MySQL数据库 - 使用read_sql()函数 ==== 数据导出 ==== 数据的导出是指将处理后的数据保存到具体文件中,这些常见的文件类型与导出对象一致,有文本、Excel文件和数据库等等。 === 导出为文本文件 === 导出方式与导入类似,对于结构化的数据,可以使用to_csv()函数来实现以CSV文件格式存储。 to_csv()函数的语法一般如下: to_csv(filepath, sep=',', na_rep='', columns=None, header=True, index=True, mode='w', index_label=None, encoding=None) 其中参数可作如下理解 ^ 参数 ^ 说明 ^ | filepath | string,读取文件的路径。 | | sep | string,代表分隔符。默认为制表符。 | | na_rep | string,代表缺失值,默认为' ' | | columns | list,表示写出的列名。默认为None | | header | boolean,表示是否将列名写出。默认为True | | index | boolean,表示是否将行名写出。默认为True | | index_label | sequence,表示索引名,默认为None | | encoding | string,代表存储文件的编码格式,默认为None | 练习:使用to_csv()函数将数据存储到指定文件中。 === 导出为Excel文件 === 导出为Excel文件可使用to_excel()函数。该函数的使用方法与to_csv()函数基本一致。区别之处在于: * to_excel()函数没有sep参数 * to_excel()函数增加了sheetname参数 练习:使用to_excel()函数将数据存储到指定文件中。