对编码和熊猫完全陌生。
for
我想根据df
Date Particulars Inwards Code
1 2017-04-01 EFG 12800 01
2 2017-07-22 ABC 100 01
3 2017-09-05 BCD 10000 01
4 2018-03-13 ABC 2000 01
列从df
输出3个数据帧,即
输出: DF1
df['Particulars']
DF2
Date Particulars Inwards Code
2 2017-07-22 ABC 100 01
4 2018-03-13 ABC 2000 01
DF3
Date Particulars Inwards Code
1 2017-04-01 EFG 12800 01
我有办法解决这个问题:
Date Particulars Inwards Code
3 2017-09-05 BCD 10000 01
我初始化 df1 = df1.append(df.loc[df['Particulars'] == 'ABC'], ignore_index=False)
列表并生成数据帧,然后使用Particulars
执行上述命令。但我想知道for loop
或sort
是否会有更好的选择?如何应用它们我尝试groupby
和groupby
但无法获取数据框。
答案 0 :(得分:3)
您可以通过在详细信息上对df进行分组来创建数据帧字典。
0
现在您可以使用
访问每个dfd = {index: label for index, label in df.groupby('Particulars')}
答案 1 :(得分:2)
词典理解是构建数据的最简洁方法:
d = {k: df[df['Particulars'] == k] for k in df['Particulars'].unique()}