下面是python透视表的简单实例,希望对学习这一块的朋友们能够有所帮助。
import pandas as pd
def pivot_table():
data_df = pd.read_csv("data.csv")
# 形成基础的成绩表
pivot_df = data_df.pivot(index='userNum', columns='subjectCode', values='score')
pivot_df.columns.name = None
# 按照课程号(subjectCode)进行分组
data_df_G = data_df.groupby(["subjectCode"], as_index=False)
# 位置信息标记
temp_count = 1
for index, subject_df in data_df_G:
# 进行透视表重组,运用dataframe的insert方法,把成绩排名(通过dataframe的rank方法实现)添加到各科成绩之后
pivot_df.insert(temp_count,"rank_" + str(index), pivot_df[index].rank(ascending=False,method='min'))
# 运行dataframe的rename方法,重命名各行的标题名
pivot_df.rename(columns={index:("score_" + str(index))},inplace=True)
temp_count += 2