【pandas】第五章 變形
【pandas】第五章 變形
Datawhale的pandas學習的開源地址:Joyful Pandas
https://datawhalechina.github.io/joyful-pandas/build/html/%E7%9B%AE%E5%BD%95/ch1.html
歡迎大家關注瞭解Datawhale :)
目錄
一、長寬表的變形
長寬表定義:針對某一特徵A(A可取a1、a2),注意區分列和對應值即可
長表=列名為A,值為a1、a2
寬表=列名為a1,值為B;列名為a2,值為B
示例,如下圖
1. pivot 長表2寬表
使用方法:df.pivot(index=‘行索引’, columns=‘列名’, values=‘列下的值’)
注意:上面三個引數可以是列表,且要求原dataframe滿足唯一性(行索引,列名組成的元組唯一,否則value不知填啥)
教程示例:
df.pivot(index='Name', columns='Subject', values='Grade')
2. pivot_table 長表2寬表
pivot缺點:需滿足唯一性,因此有pivot_table來實現聚合(函式)
使用方法:df.pivot_table(index=‘行索引’, columns=‘列名’, values=‘列下的值’,aggfunc=‘函式’,margins=True)
教程示例
3. melt 寬表2長表
使用方法:
df.melt(id_vars = 索引列名,value_vars = 需要列變行的列名,var_name = 列變行形成的列名,value_name = 列變行的取值的列名)
4. wide_to_long
使用方法:
pd.wide_to_long(df, stubnames=[‘Grade’, ‘rank’],
i = [‘Class’, ‘Name’],
j = ‘Examination’,
sep = ‘_’,
suffix = ‘.+’)
二、索引的變形
1. stack與unstack
unstack 的作用是把行索引轉為列索引
stack 的作用就是把列索引的層壓入行索引
使用方法:
df.unstack(2) :2為第二層,預設為最內層
df.stack([1,2]) :將第1,2層的列索引變為行索引
三、其他變形函式
1. crosstab
可用pivot_table代替
2. explode
explode 引數能夠對某一列的元素進行縱向的展開
使用方法:df.explode(‘列名’)
3. get_dummies
對某一列做one-hot
相關文章
- pandas 05-變形
- 第五章 字串專題 ---------------- 5.3 走出思維誤區:變形詞問題字串
- pandas基本使用(一)-- 利用python進行資料分析筆記(第五章)Python筆記
- CSS變形動畫CSS動畫
- task_5變形
- 什麼是網格變形?HyperWorks網格變形設定方法
- 01 揹包的變形
- 陣列的操作-變形陣列
- 溝槽的組合變形
- 乙女遊戲“變形記”遊戲
- Day5-Python變形(DataWhale)Python
- HyperWorks變形域和控制柄方法
- 變形元素旋轉css陰影CSS
- css3有趣的transform形變CSSS3ORM
- 1~8解釋的變形平面
- canvas錐形漸變進度條Canvas
- POJ 2253 Frogger(Floyd Dij Spfa變形)
- Android 圓形ProgressBar 改變顏色Android
- 剪花布條(kmp基礎變形)KMP
- 【Python】Pandas+Seaborn應用之簡單資料整理+橫向條形圖Python
- Mesh模型的Laplace Deformation(網格形變 - 拉普拉斯形變) - C++程式碼實現模型ORMC++
- 計算機圖形學 第四章 圖形變換計算機
- Pandas之:Pandas簡潔教程
- 第五章
- excel如何複製到word不變形Excel
- 最小的 k 個元素--快排變形
- 圖形學常⻅的變換推導
- CSS3-過渡、變形、動畫CSSS3動畫
- Pandas
- 惠普星系列x360變形本評測 高顏值、高效能超輕薄變形本
- java 方法呼叫,形參改變,實參是否發生改變Java
- Pandas - pandas.Series.pipe 函式函式
- Pandas進階貳 pandas基礎
- 「て」形訣,掌握一類動詞詞形變化的趣味記憶法
- 【CTO變形記】驅動力的選擇
- webgl 系列 —— 漸變三角形Web
- MSRA視覺計算組提出第二代可變形卷積網路,增強形變,更好效果視覺卷積
- python pandasPython