pandas系列之txt文件和sql文件的基本操作
1.导入txt文件
本文所使用到的test.txt的内容如下:
使用read_table()方法导入txt文件
import pandas as pd
df = pd.read_table(r'C:\Users\admin\Desktop\test.txt')
print(df)
result:
我是李华。 今天本来留下班里十几个人做大扫除结果他们都跑了,只留下了我一个人干完了所有活。 回家的路上真不巧又下了雨,
0 雨太大把我自行车前轮胎上的辐条都冲走了,我非常生气。 为了报复今天发生的一切,我骑着钢圈回到...
1 并把教室里的椅子都扔了出去。
该方法是将利用分隔符分开的文件导入DataFrame的通用函数。不仅可以导入.txt文件,也可以导入.csv文件。
df = pd.read_table(r'C:\Users\admin\Desktop\中文\数据分析测试表.csv')
print(df)
result:
区域,省份,城市
0 东北,辽宁,大连
1 西北,陕西,西安
2 华南,广东,深圳
3 华北,北京,北京
4 华中,湖北,武汉
read_table()方法的其他参数用法和read_csv()方法基本一致,再此不再赘述。
2.导入sql文件
2.1 安装依赖库pymysql
python连接MySQL要用到pymysql,需要手动进行安装。
import pandas as pd
import pymysql
con = pymysql.connect(host='127.0.0.1', # 数据库地址,本机为127.0.0.1或localhost
user='root', # 用户名
password='123456', # 密码
db='test', # 数据库名
charset='utf-8') # 数据库编码,一般为utf-8
sql = "select * from employees"
df = pd.read_sql(sql, con)
print(df)
此时报错
修改charset='utf8'后错误解决:
con = pymysql.connect(host='127.0.0.1', # 数据库地址,本机为127.0.0.1或localhost
user='root', # 用户名
password='123456', # 密码
db='test', # 数据库名
charset='utf8') # 数据库编码,一般为utf-8
sql = "select * from employees"
df = pd.read_sql(sql, con)
print(df)
result:
eID NAME sex birth jobs firJob hiredate
0 1 张三 男 1990-06-21 教师 2005-06-20 2009-08-26
1 2 鲁怀德 男 2004-06-29 工人 2018-08-01 2021-01-06
2 3 赵燕妮 女 1994-07-06 售货员 2004-09-21 2019-05-23
这里提供数据库查询结果作为比对:
注:python使用pymysql与MySQL交互时,编码方式只能写成utf8,不要习惯性地写成utf-8
3.小结
导入数据主要用到pandas里的read_x()方法,x表示待导入文件的格式
除了之前介绍的导入.xlsx文件的read_excel(),导入.csv文件的read_csv(),导入txt的read_table(),导入sql文件的read_sql()之外,还有一些其他方法在此列出。这些使用到的不多,在此不做深入说明,。后面如有使用到再进行更新。
pd.read_xml()
pd.read_html()
pd.read_json()
pd.read_clipboard()
pd.read_feather()
pd.read_fwf()
pd.read_gbq()
pd.read_orc()
转载自:https://juejin.cn/post/6984444851509002248