我在 Pandas 中有一个 DataFrame
PRICE Name PER CATEGORY STORENAME
0 9.99 MF gram Indica Store1
1 9.99 HY gram Herb Store2
2 9.99 FF gram Herb Store2
我想做的是将它们分成多个数据框以具有唯一的名称,然后将它们分成类别。
当前代码:
names = df['STORENAME'].unique().tolist() #find unique values
store1 = df[df['STORENAME']==names[0]]
store2 = df[df['STORENAME']==names[1]]
此代码完美运行,但我想知道是否有 Pythonic 方式,因为商店的数量可能会发生变化。
这需要绘制商店中不同类别的价格差异。
谢谢!
最佳答案
我想你可以创建DataFrames字典
:
dfs = dict(tuple(df.groupby('STORENAME')))
然后按STORENAME
选择:
store1 = dfs['Store1']
store2 = dfs['Store2']
print (store1)
PRICE Name PER CATEGORY STORENAME
0 9.99 MF gram Indica Store1
print (store2)
PRICE Name PER CATEGORY STORENAME
1 9.99 HY gram Herb Store2
2 9.99 FF gram Herb Store2
关于python - PANDAS 将数据框按唯一值行拆分为多个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47769453/