外部数据导入
导入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 ,保留最后一个,还可设置 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 三线城市
导入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)
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
稳了!魔兽国服回归的3条重磅消息!官宣时间再确认!
昨天有一位朋友在大神群里分享,自己亚服账号被封号之后居然弹出了国服的封号信息对话框。
这里面让他访问的是一个国服的战网网址,com.cn和后面的zh都非常明白地表明这就是国服战网。
而他在复制这个网址并且进行登录之后,确实是网易的网址,也就是我们熟悉的停服之后国服发布的暴雪游戏产品运营到期开放退款的说明。这是一件比较奇怪的事情,因为以前都没有出现这样的情况,现在突然提示跳转到国服战网的网址,是不是说明了简体中文客户端已经开始进行更新了呢?
更新日志
- 凤飞飞《我们的主题曲》飞跃制作[正版原抓WAV+CUE]
- 刘嘉亮《亮情歌2》[WAV+CUE][1G]
- 红馆40·谭咏麟《歌者恋歌浓情30年演唱会》3CD[低速原抓WAV+CUE][1.8G]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[320K/MP3][193.25MB]
- 【轻音乐】曼托凡尼乐团《精选辑》2CD.1998[FLAC+CUE整轨]
- 邝美云《心中有爱》1989年香港DMIJP版1MTO东芝首版[WAV+CUE]
- 群星《情叹-发烧女声DSD》天籁女声发烧碟[WAV+CUE]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[FLAC/分轨][748.03MB]
- 理想混蛋《Origin Sessions》[320K/MP3][37.47MB]
- 公馆青少年《我其实一点都不酷》[320K/MP3][78.78MB]
- 群星《情叹-发烧男声DSD》最值得珍藏的完美男声[WAV+CUE]
- 群星《国韵飘香·贵妃醉酒HQCD黑胶王》2CD[WAV]
- 卫兰《DAUGHTER》【低速原抓WAV+CUE】
- 公馆青少年《我其实一点都不酷》[FLAC/分轨][398.22MB]
- ZWEI《迟暮的花 (Explicit)》[320K/MP3][57.16MB]