pandas?數(shù)據(jù)透視和逆透視的實現(xiàn)
本篇介紹 pandas 數(shù)據(jù)重塑的幾個有用變換。假設我們有學生語數(shù)外考試的成績數(shù)據(jù),大家常見的是這種格式:
如果數(shù)據(jù)放在數(shù)據(jù)庫中,下面的格式比較符合數(shù)據(jù)庫范式:
現(xiàn)在,任務來了。要實現(xiàn)由圖一向圖二的變換,傳統(tǒng)的 Excel 功能不容易實現(xiàn),有了 Power Query 之后,可以使用 Power Query 的逆透視功能來說實現(xiàn)。
如果要實現(xiàn)由圖二向圖一的格式的變換,比較簡單的方法是利用數(shù)據(jù)透視表。因為數(shù)據(jù)中有數(shù)字,所以相對來說還比較簡單。因為本篇目的是介紹 pandas 的實現(xiàn)方法,對 Excel 中如何實現(xiàn)數(shù)據(jù)格式的轉換就不做展開。
我將圖 2 的數(shù)據(jù)放在 Sheet3 中,利用 read_excel() 方法讀取數(shù)據(jù):
import pandas as pd df = pd.read_excel('data_shaping_sample_data.xlsx', sheet_name='Sheet3')
此時顯示 df 如下:
將 df 調(diào)用 pivot() 方法進行透視:
df_pivot = df.pivot(index='Name', columns='Subject', values='Score') df_pivot
對于逆透視呢,pandas 也提供了很好的支持,以下代碼演示了使用方法:
到此這篇關于pandas 數(shù)據(jù)透視和逆透視的實現(xiàn)的文章就介紹到這了,更多相關pandas 數(shù)據(jù)透視和逆透視內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
python實現(xiàn)密度聚類(模板代碼+sklearn代碼)
這篇文章主要介紹了python實現(xiàn)密度聚類(模板代碼+sklearn代碼),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-04-04