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">\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。