import numpy as np
import pandas as pd
1.csv文件的读取和保存
1.csv文件的读取
df = pd.read_csv('上课数据/ex1.csv',engine='python')
df
![在这里插入图片描述](https://img-blog.csdnimg.cn/43796383ed8a4cc091e06e69da641d30.png)
2.让列索引变为第一行(header=None)
- engine=‘python’ 指定解释器
- sep=’,’ 指定分隔符
df = pd.read_csv('上课数据/ex1.csv',header=None,engine='python')
df
![在这里插入图片描述](https://img-blog.csdnimg.cn/af39894624bb4544aa11c7d97f2d30ec.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5pyA5L2O6LCD55qE5aWi5Y2O,size_13,color_FFFFFF,t_70,g_se,x_16)
3.修改列索引名称(names=[‘bb’,‘B’,‘C’,‘D’,‘Message’])
df2 = pd.read_csv('out.csv',names=['bb','B','C','D','Message'],engine='python')
df2
![在这里插入图片描述](https://img-blog.csdnimg.cn/c0f91051c24e4832bc9e6b3022eec6f4.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5pyA5L2O6LCD55qE5aWi5Y2O,size_8,color_FFFFFF,t_70,g_se,x_16)
4.指定一列作为行索(index_col=‘Message’)
df2 = pd.read_csv('out.csv',names=['A','B','C','D','Message'],index_col='Message',engine='python')
df2
![在这里插入图片描述](https://img-blog.csdnimg.cn/0238bc9c2f444f66abb39e8786f42097.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5pyA5L2O6LCD55qE5aWi5Y2O,size_9,color_FFFFFF,t_70,g_se,x_16)
5.保存成csv格式
df.to_csv('out.csv',header=False,index=False)
2.Excel文件的读取和保存
1.Excel文件的读取
- pd.read_excel(
io,
sheet_name=0,
header=0,
names=None,
index_col=None,
engine=None) - io 代表文件路径
- sheet_name=1 代表excel表格下的工作表2
- header代表表头
- names代表列索名称可以修改
- index_col代表可以把某一列作为行索引
- engine代表指定解释器
df3 = pd.read_excel('上课数据/ex1.xlsx',sheet_name=1)
df3
2.保存成Excel格式
df3.to_excel('ex3.xlsx',index=False)
3.TXT文件的读取和保存
1.TXT文件的读取
- \s+这个分割符的意思是匹配前面空白字符一到多次,也可以用制表符\t
df4 = pd.read_table('out.txt',sep='\s+',engine='python')
df4
![在这里插入图片描述](https://img-blog.csdnimg.cn/12cd0bef3e03432db9a1e517718318c9.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5pyA5L2O6LCD55qE5aWi5Y2O,size_20,color_FFFFFF,t_70,g_se,x_16)
2.保存成TXT文件
df4.to_csv('out.txt',sep='\t')
4.html文件的读取
df5 = pd.read_html('https://s.askci.com/stock/a/')[3]
df5
5.MySql数据库的读取和保存
import pandas as pd
import pymysql
from sqlalchemy import create_engine
1.数据库的读取
- root 数据库的用户名
- 123456 数据库的密码
- localhost 本地的地址
- 3306 端口号
- 数据分析的名称的这个数据库
- 这个数据库下面的表user_profile
engine = create_engine('mysql+pymysql://root:123456@localhost:3306/数据分析')
sql='''
select * from user_profile;
'''
df = pd.read_sql(sql,engine)
df
![在这里插入图片描述](https://img-blog.csdnimg.cn/c62460c840454aa48386b565d8c5a2de.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5pyA5L2O6LCD55qE5aWi5Y2O,size_20,color_FFFFFF,t_70,g_se,x_16)
2.保存到数据库里面
data = {
'a':[1,2,3],
'b':(4,5,6),
'c':np.arange(7,10)
}
b = pd.DataFrame(data)
b
![在这里插入图片描述](https://img-blog.csdnimg.cn/d5cfe395b0c74904a0631ab1d5524868.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5pyA5L2O6LCD55qE5aWi5Y2O,size_8,color_FFFFFF,t_70,g_se,x_16)
engine = create_engine('mysql+pymysql://root:123456@localhost:3306/数据分析')
b.to_sql('df1',engine,index=False)
![在这里插入图片描述](https://img-blog.csdnimg.cn/1561b33a8c804c9099fdc33abc2b30d8.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5pyA5L2O6LCD55qE5aWi5Y2O,size_20,color_FFFFFF,t_70,g_se,x_16)