Pandas中pivot的使用

2021-10-20 13:05:32 字數 1457 閱讀 7757

pivot函式用於從給定的表中建立出新的派生表,pivot有三個引數:索引、列和值。具體如下:

def pivot_******(index, columns, values):

"""produce 'pivot' table based on 3 columns of this dataframe.

uses unique values from index / columns and fills with values.

parameters

----------

index : ndarray

labels to use to make new frame's index

columns : ndarray

labels to use to make new frame's columns

values : ndarray

values to use for populating new frame's values

pivot行轉列函式: df.pivot() 將長資料集轉換成寬資料集,

import pandas as pd

# 讀取week資料集

week = pd.read_csv('data/week.csv')

week

name

month

week

weight

perc weight loss

6bob

janweek 4

283-0.027

7amy

janweek 4

190-0.036

14bob

febweek 4

268-0.053

15amy

febweek 4

173-0.089

22bob

marweek 4

261-0.026

23amy

marweek 4

170-0.017

30bob

aprweek 4

250-0.042

31amy

aprweek 4

161-0.053

# 用pivot重構dataframe,讓amy和bob的資料併排放置

winner = week.pivot(index='month', columns='name', values='perc weight loss')

winner

name

amybob

month

apr-0.053

-0.042

feb-0.089

-0.053

jan-0.036

-0.027

mar-0.017

-0.026

學習使用PIVOT

假設有這樣的乙個需求 有乙個表中儲存了某個部門的各個員工的每一年的各類薪金,記錄儲存格式如 員工姓名 薪金數目 薪金種類 年份 現在要求根據員工的姓名進行查詢,查詢出某些員工各個年份的薪金總數,出來的結果要求 columnname 年份 員工1姓名 員工2姓名 columnvalue 年份 薪金總數...

pandas 中 stack 的使用

有時候需要將特徵名稱轉化為變數,也就是將資料集由橫向改為縱向,或者為轉秩。使用場景如下 資料集 in 5 test out 5 tweet id doggo floofer pupper puppo 0675003128568291329 none none none none 1786233965...

Pandas中melt 的使用

pandas.melt 使用引數 pandas.melt frame,id vars none,value vars none,var name none,value name value col level none 引數解釋 frame 要處理的資料集。id vars 不需要被轉換的列名。val...