Python3 Pandas的DataFrame格式数据写入excle文件、json、html、剪贴板、数据库
一、DataFrame格式数据
Pandas是Python下一个开源数据分析的库,它提供的数据结构DataFrame极大的简化了数据分析过程中一些繁琐操作,DataFrame是一张多维的表,大家可以把它想象成一张Excel表单或者Sql表;
import pandas as pd import numpy as np df = pd.DataFrame(np.random.randn(3, 4)) print(df)
输出数据:
0 1 2 3
0 1.0492286140081302 -0.7922606407983686 0.020418054868760225 -1.6649819403741724
1 0.3485250628814134 -2.117606544377745 1.466822878437205 -0.9249205656243358
2 1.3073567907490637 -0.7350348086218035 0.2856083175408006 -0.9053483976251634
二、代码实现
1,写入到excle文件
需要安装:xlwt
安装命令:pip install xlwt
代码:
#DataFrame数据:df #更改写入excle表的列名,将列名1,2,3更改为a,b,c #方法一:全部列更名,必须是所有参数个数 df.columns = ['a','b','c'] #方法二:灵活更改列名 df.rename(columns={'1':'a', '2':'b', '3':'c'}, inplace = True) #写入excle df.to_excel('D:\a.xls',encoding='utf-8', index=False, header=False)
2,写入到csv文件
需要安装:xlwt
安装命令:pip install xlwt
代码:
#DataFrame数据:df #第一个参数是说把dataframe写入到D盘下的a.csv文件中,参数sep表示字段之间用’,’分隔,header表示是否需要头部,index表示是否需要行号。 df.to_csv('D:\a.csv', sep=',', header=True, index=True)
3,写入json文件
#DataFrame数据:df df.to_json('D:\a.json')
a.json文件的内容为:
{"0":{"0":1.049228614,"1":0.3485250629,"2":1.3073567907},"1":{"0":-0.7922606408,"1":-2.1176065444,"2":-0.7350348086},"2":{"0":0.0204180549,"1":1.4668228784,"2":0.2856083175},"3":{"0":-1.6649819404,"1":-0.9249205656,"2":-0.9053483976}}
4,Dataframe写入到html文件
#DataFrame数据:df df.to_html('D:\a.html')
a.html文件的内容为:
<table border="1" class="dataframe"> <thead> <tr style="text-align: right;"> <th></th> <th>0</th> <th>1</th> <th>2</th> <th>3</th> </tr> </thead> <tbody> <tr> <th>0</th> <td>1.049229</td> <td>-0.792261</td> <td>0.020418</td> <td>-1.664982</td> </tr> <tr> <th>1</th> <td>0.348525</td> <td>-2.117607</td> <td>1.466823</td> <td>-0.924921</td> </tr> <tr> <th>2</th> <td>1.307357</td> <td>-0.735035</td> <td>0.285608</td> <td>-0.905348</td> </tr> </tbody> </table>
浏览器中打开a.html的样式为:
5,写入到剪贴板中
一行代码可以将dataframe的内容导入到剪切板中,然后可以复制到任意地方;
#DataFrame数据:df df.to_clipboard()
6,写入到数据库中
#DataFrame数据:df df.to_sql('tableName', con=dbcon, flavor='mysql')
第一个参数是要写入表的名字,第二参数是sqlarchmy的数据库链接对象,第三个参数表示数据库的类型,“mysql”表示数据库的类型为mysql。