excelperfect 标签:Python与Excel,pandas 要使用Python处理数据,首先要将数据装载到Python,这里使用Python pandas来读取Excel文件。 pandas是Python编程语言中数据操作的事实标准。如果使用Python处理任何形式的数据,需要pandas。如果你没有安装pandas,可以在命令行中输入: pip install pandas --upgrade 安装pandas。 如果安装出现异常,可以还需要先安装openpyxl: pip install openpyxl pandas库提供了几种便捷的方法来读取不同的数据源,包括Excel和CSV文件。这里我们将探讨两种方法:pd.read_excel()和pd.read_csv()。 pd.read_excel()方法及参数 read_excel()方法包含大约几十个参数,其中大多数是可选的。对于初学者,我们只介绍下面几个参数。 read_excel(io,sheet_name=0,header=0,names=None,usecols=None) 其中:
这里是本文的示例工作簿(“用户.xlsx”),可以到pythoninoffice.com或者知识星球完美Excel社群下载。 按照惯例,“pd”是“pandas”的缩写,“df”是“dataframe”的缩写。 图1:读取Excel文件 io和sheet_name pd.read_excel('D:\用户.xlsx')是最简单的形式,它(默认情况下)将为我们提供输入excel文件的第一个工作表表单,即“用户信息”工作表。 pf.read_excel('D:\用户.xlsx',sheet_name='购物清单')表示我们将得到第二个工作表,名为“购物清单”。 pf.read_excel('D:\用户.xlsx',sheet_name=[0,2])将返回excel文件的第一个和第三个工作表。返回的值是数据框架的字典。 header 如果由于某种原因,Excel工作表上的数据不是从第1行开始的,你可以使用header告诉Panda“嘿,此数据的标题在第X行”。示例Excel文件中的第四个工作表从第4行开始。在没有特别指示的情况下阅读该表,pandas会认为我们的数据没有列名。 图2:非标准列标题,数据不是从第1行开始 这并不好,数据框架需要一些清理。相反,我们可以通过指定header参数稍微修改代码。记住,Python使用基于0的索引,因此第4行的索引为3。 图3:指定列标题所在行 names 如果不喜欢源Excel文件中的标题名,可以使用names参数创建自己的标题名。 图4:自定义列标题名称 usecols 通过指定usecols,我们限制加载到Python中的Excel列,如果你有一个大型数据集,并且不需要所有列,就可以使用这个参数。下面的示例将只读取顾客姓名和购物名列到Python。 图5:指定我们想要的列 pd.read_csv()方法及参数 顾名思义,此方法读取csv文件。 CSV代表“逗号分隔值”,因此.CSV文件基本上是一个文本文件,其值由逗号分隔。这意味着还可以使用此方法将任何.txt文件读入Python。 read_csv()的参数类似于read_excel(),这里不再重复。然而,有一个参数值得说明:sep或delimiter。它用于告诉pandas使用什么分隔符来分隔数据。使用这里的示例文本文件(可在知识星球完美Excel社群中下载)可以看到基本上可以使用任何字符作为分隔符。 图6:使用问号(?)分隔文本 图7:可以使用“?”作为分隔符 注:本文学习整理自pythoninoffice.com。 欢迎到知识星球:完美Excel社群,进行技术交流和提问,获取更多电子资料,并通过社群加入专门的微信讨论群,更方便交流。
|
|
来自: hercules028 > 《Python and AI》