从熊猫列中的类别创建列

时间:2019-04-17 06:42:01

标签: pandas

我有一个数据框,我想根据该列中的数据级别创建列。例如,

Cust_ID  MCC  Date TRANS_AMT Frequency
1       1750  Jan    6633        1
1       1799  Jan    5584        1
2       3001  Mar    405         2
2       3174  Oct    1219        1

我想基于MCC和Date列中的数据级别创建列。对于每个Cust_ID,我希望它们在每个MCC和日期级别组合时完成的TRANS_AMT和频率。

以下是必需的输出:

Sample Output

1 个答案:

答案 0 :(得分:0)

因为最终DataFrame中的列顺序很重要,请将列date转换为ordered categorical,然后由DataFrame.set_indexMultiIndex和{ {1}}也转换为有序的CategoricalIndex

然后通过DataFrame.unstack重塑形状,并按DataFrame.sort_index按列中第二级TRANS_AMT进行排序。

使用FrequencyDataFrame.reset_index的索引中列的列表理解中的最后一个展平值:

MultiIndex

如果排序不重要,则删除转换为分类的

f-string