내배캠(개인과제)/Python

[온라인강의] 데이터 전처리 - Pandas

신짜린 2024. 7. 18. 11:31

숙제 1

import seaborn as sns

iris_data = sns.load_dataset('iris')
iris_data

 

문제 1

 'species' 열 값이 'setosa'인 데이터 선택하기

# Q1. 정답
a = iris_data[iris_data['species'] == 'setosa']
a.head()

 

문제 2

 10부터 20까지의 행과 1부터 3까지의 열 선택하기

# Q2. 정답
iris_data.iloc[10:21, 1:4]

 

숙제 2

import seaborn as sns

tips_data = sns.load_dataset('tips')
tips_data

 

문제 1

 total_bill이 30 이상인 데이터만 선택하기

# Q1. 정답
c = tips_data[tips_data['total_bill'] >= 30]
c.head()

 

문제 2

 성별('sex')을 기준으로 데이터 그룹화하여 팁(tip)의 평균 계산

# Q2. 정답
grouped_sex_mean = tips_data.groupby('sex').mean()
grouped_sex_mean['tip']

 

문제 3

 'day'와 'time'을 기준으로 데이터 그룹화하여 전체 지불 금액(total_bill)의 합 계산

# Q3. 정답
grouped_sum = tips_data.groupby(['day', 'time']).sum()
grouped_sum['total_bill']

 

문제 4

 'day' 열을 기준으로 각 요일별로 팁(tip)의 평균을 새로운 데이터프레임으로 만든 후, 이를 기존의 **`tips`** 데이터셋에 합쳐보자

# Q4. 정답
import pandas as pd

grouped_day_mean = tips_data.groupby('day').mean()
c = grouped_day_mean['tip']
merge_c = pd.merge(tips_data, c, on = 'day', how = 'left')
merge_c