建立一个增量列表并在条件改变时重置它——在最后旋转它
build a incremental list and reset it when condition changes - pivot it at the end
我正在尝试创建一个基于组的增量列表,并在每次组更改时重置它。在那之后,我想旋转 table,并使用该增量列表作为索引
table = [['marco', 5, 'brasil','2022-05-01'],
['isa', 8, 'eua','2022-05-02'],
['maria', 5, 'chile','2022-05-03'],
['fernanda', 8, 'brasil','2022-05-01'],
['marco', 5, 'chile','2022-05-02']]
df = pd.DataFrame(table, columns = ['Name', 'Age', 'Country', 'Birthday'])
df.set_index('Birthday', inplace=True)
df.sort_values('Birthday', axis=0, ascending=True)
df['count']= df.groupby(df['Birthday'].cumsum()).cumcount()
Current output
期望的输出
Desired output
最终结果应该是一个枢轴table using
df_pivot = df.pivot(index='count', columns='Birthday', values='Name')
Final result
df=df.sort_values('Birthday', axis=0, ascending=True)
df['Month']=df['Birthday'].apply(lambda x: x[6:]) # get month and use group by on this
df['count']=(df.groupby('Month').cumcount())+1
df.pivot(index='count', columns='Birthday', values='Name')
我无法让计数器自动工作,我用了cumcount())+1
我正在尝试创建一个基于组的增量列表,并在每次组更改时重置它。在那之后,我想旋转 table,并使用该增量列表作为索引
table = [['marco', 5, 'brasil','2022-05-01'],
['isa', 8, 'eua','2022-05-02'],
['maria', 5, 'chile','2022-05-03'],
['fernanda', 8, 'brasil','2022-05-01'],
['marco', 5, 'chile','2022-05-02']]
df = pd.DataFrame(table, columns = ['Name', 'Age', 'Country', 'Birthday'])
df.set_index('Birthday', inplace=True)
df.sort_values('Birthday', axis=0, ascending=True)
df['count']= df.groupby(df['Birthday'].cumsum()).cumcount()
Current output
期望的输出
Desired output
最终结果应该是一个枢轴table using
df_pivot = df.pivot(index='count', columns='Birthday', values='Name')
Final result
df=df.sort_values('Birthday', axis=0, ascending=True)
df['Month']=df['Birthday'].apply(lambda x: x[6:]) # get month and use group by on this
df['count']=(df.groupby('Month').cumcount())+1
df.pivot(index='count', columns='Birthday', values='Name')
我无法让计数器自动工作,我用了cumcount())+1