這篇文章給大家介紹使用Pandas怎么實現(xiàn)重塑和軸向旋轉,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
import numpy as np import pandas as pd from pandas import Series,DataFrame
一、重塑
stack:將數(shù)據(jù)的列索引旋轉為行索引
unstack:將數(shù)據(jù)的行索引旋轉為列索引
df = DataFrame({'水果':['蘋果','梨','草莓'], '數(shù)量':[3,4,5], '價格':[4,5,6]}) print(df)
價格 數(shù)量 水果
0 4 3 蘋果
1 5 4 梨
2 6 5 草莓
1.stack()
stack_df = df.stack() print(stack_df)
0 價格 4
數(shù)量 3
水果 蘋果
1 價格 5
數(shù)量 4
水果 梨
2 價格 6
數(shù)量 5
水果 草莓dtype: object
2.unstack()
print(stack_df.unstack())
價格 數(shù)量 水果
0 4 3 蘋果
1 5 4 梨
2 6 5 草莓
3.通過level參數(shù)指定旋轉軸的層次(默認level=-1)
print(stack_df.unstack(level=0))
0 1 2
價格 4 5 6
數(shù)量 3 4 5
水果 蘋果 梨 草莓
二、軸向旋轉(pivot)
pivot(index,columns,values):將index指定為行索引,columns是列索引,values則是DataFrame中的值
df = DataFrame({'水果種類':['蘋果','蘋果','梨','梨','草莓','草莓'], '信息':['價格','數(shù)量','價格','數(shù)量','價格','數(shù)量'], '值':[4,3,5,4,6,5]}) print(df)
信息 值 水果種類
0 價格 4 蘋果
1 數(shù)量 3 蘋果
2 價格 5 梨
3 數(shù)量 4 梨
4 價格 6 草莓
5 數(shù)量 5 草莓
將水果種類作為行索引,將信息作為列索引
print(df.pivot('水果種類','信息','值'))
信息 價格 數(shù)量
水果種類
梨 5 4
蘋果 4 3
草莓 6 5
pivot可以用set_index和unstack等價的實現(xiàn)
print(df.set_index(['水果種類','信息']).unstack())
值
信息 價格 數(shù)量
水果種類
梨 5 4
蘋果 4 3
草莓 6 5
關于使用Pandas怎么實現(xiàn)重塑和軸向旋轉就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
網(wǎng)站欄目:使用Pandas怎么實現(xiàn)重塑和軸向旋轉-創(chuàng)新互聯(lián)
URL鏈接:http://chinadenli.net/article16/decegg.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)頁設計公司、靜態(tài)網(wǎng)站、Google、品牌網(wǎng)站設計、關鍵詞優(yōu)化、網(wǎng)站導航
聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內容