系統(tǒng):Windows 7
語言版本:Anaconda3-4.3.0.1-Windows-x86_64
編輯器:pycharm-community-2016.3.2
- 這個(gè)系列講講Python的科學(xué)計(jì)算版塊
- 今天講講pandas模塊:對(duì)DataFrame的行列按照新的規(guī)則進(jìn)行重組
Part 1:示例
- 已知一個(gè)
DataFrame
,有4列["time", "pos", "value1", "value2", "value3"]
- 以
time
作為列胧华,pos
作為行重組DataFrame
- 從結(jié)果上看宙彪,相當(dāng)于對(duì)
value1
這一列進(jìn)行了重新布局释漆,以time
作為列篮迎,pos
作為行
原DataFrame
變形后
Part 2:代碼
import pandas as pd
dict_1 = {"time": ["2019-11-2", "2019-11-2", "2019-11-2", "2019-11-3", "2019-11-3", "2019-11-3"],
"pos": ["P1", "P2", "P3", "P1", "P2", "P3"],
"value1": [11, 22, 33, 44, 55, 66],
"value2": [1, 2, 3, 4, 5, 6],
"value3": [1, 2, 3, 4, 5, 6]}
df = pd.DataFrame(dict_1, columns=["time", "pos", "value1", "value2", "value3"])
df_2 = df.pivot(index="pos", columns='time', values='value1')
print(df)
print("\n")
print(df_2)
代碼截圖
Part 3:部分代碼解讀
-
df.pivot(index="pos", columns='time', values='value1')
-index
設(shè)置行索引
-columns
設(shè)置列索引
-values
設(shè)置內(nèi)容 - 如果調(diào)換行列
df_3 = df.pivot(index="time", columns='pos', values='value1')
逊笆,結(jié)果如下圖 - 結(jié)合上一章節(jié)难裆,是不是可以快速算出每一個(gè)
pos
的各種統(tǒng)計(jì)值譬胎,如下圖所示
調(diào)換行列
統(tǒng)計(jì)結(jié)果
本文為原創(chuàng)作品,歡迎分享朋友圈
長按圖片識(shí)別二維碼脐恩,關(guān)注本公眾號(hào)
Python 優(yōu)雅 帥氣