python如何导入外部数据_详解pandas的外部数据导入与常用方法

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

来源:中文源码网    浏览: 次    日期:2019年11月5日

【下载文档:  详解pandas的外部数据导入与常用方法.txt 】

(友情提示:右键点上行txt文档名->目标另存为)

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

导入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 自由职业 6000excel_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 ,保留最后一个,还可设置 keep 为 False ,一个也不保留。另也可指定列名去重,如传入参数 subset =['列名1,列名2'],注意是以列表形式传参;

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

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

column 和 index 可设置 列索引 和 行索引 ,以 列表 形式传参;

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

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

rename() 重命名索引,可重新设置 columns 和 index ,以 字典 形式传参, 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 三线城市

导入sqlpandas中有 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)以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持中文源码网。

亲,试试微信扫码分享本页! *^_^*

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值