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={'':'a', '':'b', '':'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">\n
<thead>\n
<tr style="text-align: right;">\n
<th></th>\n
<th>0</th>\n
<th>1</th>\n
<th>2</th>\n
<th>3</th>\n
</tr>\n
</thead>\n
<tbody>\n
<tr>\n
<th>0</th>\n
<td>1.049229</td>\n
<td>-0.792261</td>\n
<td>0.020418</td>\n
<td>-1.664982</td>\n
</tr>\n
<tr>\n
<th>1</th>\n
<td>0.348525</td>\n
<td>-2.117607</td>\n
<td>1.466823</td>\n
<td>-0.924921</td>\n
</tr>\n
<tr>\n
<th>2</th>\n
<td>1.307357</td>\n
<td>-0.735035</td>\n
<td>0.285608</td>\n
<td>-0.905348</td>\n
</tr>\n
</tbody>\n
</table>
浏览器中打开a.html的样式为:
5,写入到剪贴板中
一行代码可以将dataframe的内容导入到剪切板中,然后可以复制到任意地方;
#DataFrame数据:df
df.to_clipboard()
6,写入到数据库中
#DataFrame数据:df
df.to_sql('tableName', con=dbcon, flavor='mysql')
第一个参数是要写入表的名字,第二参数是sqlarchmy的数据库链接对象,第三个参数表示数据库的类型,“mysql”表示数据库的类型为mysql。