본문 바로가기
데이터 분석 기초/분석 기법

[Python Data Analysis 분석 3] 데이터 분석 - 식당 데이터 분석해보기(3/3)

by 망망낭낭 2020. 6. 8.
반응형

네이버 블로그로 이전했습니다.

 

https://blog.naver.com/moongda0404/222729498108

 

[Python Data Analysis 분석 3] 데이터 분석 - 식당 데이터 분석해보기(3/3)

*본 글은 Python3을 이용한 데이터 분석(Data Analysis)을 위한 글입니다. 이번엔 저번 글에서 뽑았던 ...

blog.naver.com

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

*본 글은 Python3을 이용한 데이터 분석(Data Analysis)을 위한 글입니다.

이번엔 저번 글에서 뽑았던 데이터들을 그래프와 차트로 그려보겠습니다.

matplotlib는 다양한 차트를 제공하니 사이트를 참고하시면 좋습니다.

 
#차트의 크기를 조정. (가로, 세로) plt.rcParams["figure.figsize"] = (20,10) #차트 눈금선을 표기 plt.rcParams['axes.grid']
#차트의 크기를 조정. (가로, 세로)
plt.rcParams["figure.figsize"] = (20,10)

#차트 눈금선을 표기
plt.rcParams['axes.grid'] = True 

#'item_name'과 'quantity'를 별도로 추출
temp_df=pd.DataFrame({'item_name':temp.index,'quantity':temp.values})
x=temp_df['item_name']
y=temp_df['quantity']

plt.bar(x,y)
plt.xlabel('x=item_name')
plt.ylabel('y=quantity')
plt.title('Best Top10')
plt.show()​

앞서 글에서는 재료별로 나누었을 땐 아니었는데, 전체적으로 보니 치킨볼이 많이 팔린 걸 알 수 있습니다.

2. 식당 사장이 주문해야 할 재료 수량 파악

#음식마다 들어간 'ingredients' 각각의 총합을 알기 위해, 모든 데이터를 추출하여 배열로 재조합
sum=''
for i in chipo['ingredients'] :
    if i !='Origin' :
        sum+=i.strip()
        
arr=sum.split(',')

#한 줄의 배열로 재조합 한 뒤, 재료별로 합쳐 갯수를 세아리기 위해 DataFrame으로 재변환
df=pd.DataFrame(arr,columns=['ingredients'])
df_Top10=df['ingredients'].value_counts().head(10)

#차트로 나타내기 위한 과정
df_temp=pd.DataFrame({'ingredients':df_Top10.index, 'amounts':df_Top10.values})
x=df_temp['ingredients']
y=df_temp['amounts']

plt.bar(x,y)
plt.xlabel('x=ingredients')
plt.ylabel('y=amounts')
plt.show()

이 집 사장님은 식자재 구매 시 'Cheese'와 'Sour Cream'를 많이 구비해놔야 할 것 같습니다.

그럼 여태까지 파이썬과 pandas, matplotlib를 이용해 기초적인 예제를 진행해보았습니다.

근데 이런 질문이 나올 수 있습니다. 어떤 음식 조합이 제일 선호될까?

데이터를 보면, 각 주문마다 여러 메뉴를 선택하는 걸 볼 수 있습니다.

보통 우리는 식당을 가면 직원분에게 물어보죠.

"어떤 메뉴를 주로 먹나요?"

그럼 직원은 말합니다.

"토마토파스타와 파마산 치즈를 곁들인 마르게리따 피자를 주로 먹어요"

어떻게 직원은 그 판단을 할 수 있었을까요?

다음 글에선 잠시 상관 관계 분석에 대해 다룬 뒤, 곧이어 연관 관계 분석을 통해 식당의 메뉴 조합을 분석해보겠습니다.

반응형

댓글