2017-12-12 7 views
2

나는 팬더팬더는

 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 

에 DataFrame이 내가 다음 범주에 그 분할에 고유 한 이름을 가지고 여러 데이터 프레임으로이 분할되고 싶지.

현재 코드 :

names = df['STORENAME'].unique().tolist() #find unique values 
store1 = df[df['STORENAME']==names[0]]   
store2 = df[df['STORENAME']==names[1]] 

이 코드는 완벽하게 작동하지만 점포 수는 변경 될 수 있습니다 때문에 파이썬 방법이 있는지 궁금하고있다.

상점의 카테고리 가격 차이를 플로팅하는 데 필요합니다.

감사합니다.

dfs = dict(tuple(df.groupby('STORENAME'))) 

을 그리고 STORENAME에 의해 선택 :

답변

4

난 당신이 dictionary of DataFrames을 만들 수 있다고 생각

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 
+0

감사합니다, 나는 사전에 storenames 몰랐 때문에, 나는 StoreName이로 선택할 수 없습니다. 그러나 ** listdf = [dfs의 x에 대한 dfs [x] ** ** 전체 목록을 얻으려면 범주에 대해 반복 할 수 있습니다. 감사! –