pandas的外部数据导入与常用方法

栏目: 数据库 · 发布时间: 4年前

内容简介:pandas导入excel用read_excel()方法:第一个参数是路径,既可以使用绝对路径又可以使用相对路径,如果文件名含有汉字,注意指定设置一下属性行索引默认从0开始,通过

外部数据导入

导入excel文件

pandas导入excel用read_excel()方法:

import pandas as pd
excel_file1 = pd.read_excel('data/测试.xlsx',encoding='utf-8')复制代码
姓名  年龄    工作    工资
0   张三  25    学生      200
1   李四  24    工人     3000
2   王伟  28    NaN      5000
3  王二毛  22  自由职业   6000复制代码

第一个参数是路径,既可以使用绝对路径又可以使用相对路径,如果文件名含有汉字,注意指定设置一下属性 encoding = 'utf-8' ,另设置 sheet_name 指定具体的Sheet名字,也可传入sheet的顺序,从0开始。

excel_file1 = pd.read_excel('data/test.xlsx',sheet_name = 0)复制代码

指定索引

行索引默认从0开始,通过 index_col 设置, header 设置行索引。

excel_file1 = pd.read_excel('data/测试.xlsx',encoding='utf-8',index_col=0)复制代码
年龄    工作    年资
姓名                 
张三   25    学生      200
李四   24    工人     3000
王伟   28   NaN       5000
王二毛  22  自由职业   6000复制代码
excel_file1 = pd.read_excel('data/测试.xlsx',encoding='utf-8',header=1)复制代码
张三  25    学生     200
0   李四  24    工人    3000
1   王伟  28   NaN      5000
2  王二毛  22  自由职业  6000复制代码

指定索引列

有时本地文件列数太多,可以设置 usercols 指定导入的列,也可以列表形式传入多个值,表示传入哪些列。

excel_file1 = pd.read_excel('data/测试.xlsx',encoding='utf-8',usecols=[0,2])复制代码
姓名    工作
0   张三    学生
1   李四    工人
2   王伟    NaN
3  王二毛  自由职业复制代码

常用方法

  • shape() 可以获取excel文件的行和列,以元祖形式返回;

  • info() 获取数据类型;

  • astype()   可转换列里面的数据类型,括号里是要转换的目标类型;如 df[列2].astype('float64') ; df['列'].dtype 可查看列的类型

  • isnull() 判断哪个值是缺失值;

  • dropna() 删除有缺失值的行,返回删除后的数据,传入参数how=all,要全为空值才会删除;

  • fillna() 括号内可直接填入要要填充的值,也可指定列填充,以 字典 形式传参;

  • drop_duplicates() 默认对所有重复值判断,默认保留 keep=first 第一个行值;通过 keep 修改,值可为 last ,保留最后一个,还可设置 keepFalse ,一个也不保留。另也可指定列名去重,如传入参数 subset =['列名1,列名2'],注意是以列表形式传参;

  • head() 传入的参数代表获取前几行;

  • describe() 掌握数值的分布情况,如均值,最值,方差,分位数。

  • columnindex 可设置 列索引行索引 ,以 列表 形式传参;

  • set_index() 重新设置索引列,传入要指名要用做行索引的名称;

  • reset_index(level = None,drop=False,inplace = False) ,level指定要将层次化索引的第几级别转化为 columns ,第一个索引为0级,第二个为1级,默认全部转化为columns。 drop 是否将原索引删掉, inplace 是否修改原数据表;该方法常用于数据分组和数据透视表中。

  • rename() 重命名索引,可重新设置 columnsindex ,以 字典 形式传参, key 为原值, value 为替换后的值。

导入CSV文件

pandas导入csv文件用read_csv()方法;

import pandas as pd
csv_file1 = pd.read_csv('.\\data\\train-pivot.csv',index_col=0,header=0,nrows = 2) 复制代码

通过 sep 设置分割符, encoding 指定编码格式。导入csv文件要指定为gbk,不然会报错,如果一个大文件你只需看前面几行,通过 nrows 设置。

import pandas as pd
csv_file1 = pd.read_csv('data/train-pivot.csv',encoding='gbk',nrows=2)
print(csv_file1)复制代码
用户ID 客户分类    区域 是否省会  7月销量  8月销量  
0  59224   A类  一线城市    是     6    20     0
1  55295   B类  三线城市    否    37    27    35复制代码

可以设置 usercols 指定导入的列。

用户ID    区域
0  59224  一线城市
1  55295  三线城市
2  46035  二线城市
3   2459  一线城市
4  22179  三线城市复制代码

导入sql

pandas中有 read_sql() 方法:

import pandas as pd
import pymysql
# 创建连接
conn = pymysql.connect(host = 'localhost',user = 'python',
                       password = 'passwd',db = 'test',
                       charset = 'utf-8'
                       )
'''
user:用户名
password:密码
host:数据库地址/本机用localhost
db:数据库名
charset:编码,一般为utf-8
'''
sql = "SELECT * FROM user" # 写要执行的 sql 语句
pd.read_sql(sql,conn)复制代码

以上所述就是小编给大家介绍的《pandas的外部数据导入与常用方法》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Programming Computer Vision with Python

Programming Computer Vision with Python

Jan Erik Solem / O'Reilly Media / 2012-6-22 / USD 39.99

If you want a basic understanding of computer vision's underlying theory and algorithms, this hands-on introduction is the ideal place to start. As a student, researcher, hacker, or enthusiast, you'll......一起来看看 《Programming Computer Vision with Python》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

html转js在线工具
html转js在线工具

html转js在线工具