我使用以下命令将pivot
排成一堆行:
df[df.branch=='ALG'].reset_index().pivot_table(index='branch', columns='monyear', values='conceptname')
列conceptname
是string
列,因此我收到以下错误:
DataError: No numeric types to aggregate
如何让pandas
忽略这一点?我真的不想聚合任何东西,我只是想以柱状格式重塑我的数据。
这是我的输入数据:
branch monyear conceptname
A Jul text1
A Jul text2
A Aug text3
A Aug text4
B Jul text5
B Jul text6
B Aug text7
B Aug text8
期望的输出:
branch Jul Aug
A text1 text3
A text2 text4
B text5 text7
B text6 text8
A
和B
可以被视为在不同月份(Jul
和Aug
)销售内容的不同分支。我想列出这些分支机构在不同月份销售的东西。
任何帮助将不胜感激。 TIA。
答案 0 :(得分:3)
尝试:
df_ = df.set_index(['branch']).groupby('monyear').apply(lambda x: x.T).T
df_ = df_.xs('conceptname', axis=1, level=1)
print df_
monyear Aug Jul
branch
A text3 text1
A text4 text2