Python中創(chuàng)建表格詳細過程
1. 引言
如果能夠將我們的無序數(shù)據快速組織成更易讀的格式,對于數(shù)據分析非常有幫助。 Python 提供了將某些表格數(shù)據類型輕松轉換為格式良好的純文本表格的能力,這就是 tabulate 庫。
2. 準備工作
安裝tabulate庫:
安裝tabulate庫非常容易,使用pip即可安裝,代碼如下:
pip install tabulate
導入tabulate函數(shù):
接著我們需要導入我們需要的tabulte函數(shù),如下:
from tabulate import tabulate
準備工作做好后,接下來我們來舉個栗子。
3. 舉個栗子
3.1 使用list生成表格
接著我們假設我們有以下數(shù)據:
table = [['First Name', 'Last Name', 'Age'],? ['John', 'Smith', 39],? ['Mary', 'Jane', 25],? ['Jennifer', 'Doe', 28]]
接著我們可以使用 tabulate 函數(shù)將上述數(shù)據組織成一個更易讀的表格形式,代碼如下:
print(tabulate(table))
結果如下:

由于上述list中的第一個列表包含每列的名稱,我們可以使用以下參數(shù)將列名單獨顯示出來,代碼如下:
print(tabulate(table, headers='firstrow'))
結果如下:

tabulate 函數(shù)還包提供一個 tablefmt 參數(shù),它允許我們進一步改進表格的外觀,
代碼如下:
print(tabulate(table, headers='firstrow', tablefmt='grid'))
結果如下:

相比grid,我更喜歡對 tablefmt 使用fancy_grid參數(shù),其表現(xiàn)形式如下:
print(tabulate(table, headers='firstrow', tablefmt='fancy_grid'))
結果如下:

3.2 使用dict生成表格
當然,在Python中我們也可以使用字典來生成相應的表格。
代碼如下:
info = {'First Name': ['John', 'Mary', 'Jennifer'],?
'Last Name': ['Smith', 'Jane', 'Doe'],?
'Age': [39, 25, 28]}在字典的情況下,鍵通常是列的標題,值將是這些列的元素取值。我們通常通過傳遞“keys”作為 headers 參數(shù)的參數(shù)來指定鍵是表格的標題:
print(tabulate(info, headers='keys'))
輸出如下:

當然,此時我們也可以使用 tablefmt 參數(shù)來改善表格的外觀,代碼如下:
print(tabulate(info, headers='keys', tablefmt='fancy_grid'))
輸出如下:

3.3 增加索引列
進一步來說,我們還可以使用showindex參數(shù)來向表格中添加索引列,代碼如下:

3.4 缺失值處理
如果我們從字典中移走’Jennifer’,此時我們的表格將會包含一個空白單元格,代碼如下:
print(tabulate({'First Name': ['John', 'Mary'],?
'Last Name': ['Smith', 'Jane', 'Doe'],?
'Age': [39, 25, 28]}, headers="keys",
?tablefmt='fancy_grid'))輸出如下:

有時候,我們覺得缺失值用空白格表示不太美觀,此時我們可以設置默認值來顯示,代碼如下:
print(tabulate({'First Name': ['John', 'Mary'],?
'Last Name': ['Smith', 'Jane', 'Doe'],?
'Age': [39, 25, 28]}, headers="keys",
?tablefmt='fancy_grid'))結果如下:

到此這篇關于Python中創(chuàng)建表格詳細的文章就介紹到這了,更多相關Python中創(chuàng)建表格內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Python使用multiprocessing實現(xiàn)多進程
當我們工作中涉及到處理大量數(shù)據、并行計算或并發(fā)任務時,Python的multiprocessing模塊是一個強大而實用的工具,在本文中,我們將探索如何使用multiprocessing模塊實現(xiàn)多進程編程,將介紹進程池的概念和用法,需要的朋友可以參考下2024-10-10
Python實現(xiàn)用networkx繪制MultiDiGraph
這篇文章主要介紹了Python實現(xiàn)用networkx繪制MultiDiGraph方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-02-02

