Pandas examples
pandas 설치 및 import
!pip install pandas
import pandas as pd
문제 1: DataFrame 생성
- 데이터 분석에 필요한 기본 구조 중 하나는 DataFrame입니다. Pandas를 이용하여 다음과 같은 데이터를 가진 DataFrame을 만들어 보세요.
Name Age City
John 28 New York
Alice 24 Los Angeles
Bob 22 Chicago
data = {'Name': ['John', 'Alice', 'Bob'],
'Age': [28, 24, 22],
'City': ['New York', 'Los Angeles', 'Chicago']}
df = pd.DataFrame(data)
df

문제 2: DataFrame 정보 조회
- Pandas DataFrame에서 총 row 개수, column 이름, 각 column의 데이터 타입을 출력하세요.
data = {'Name': ['John', 'Alice', 'Bob'],
'Age': [28, 24, 22],
'City': ['New York', 'Los Angeles', 'Chicago']}
df = pd.DataFrame(data)
print(df.shape)
print(df.columns)
print(df.dtypes)
print(df.info())

문제 3: 특정 컬럼 기준으로 데이터 정렬하기
- 다음과 같은 DataFrame이 주어졌을 때, 'Age' 컬럼을 기준으로 오름차순으로 정렬하세요.
data = {'Name': ['John', 'Alice', 'Bob'],
'Age': [28, 24, 22],
'City': ['New York', 'Los Angeles', 'Chicago']}
df = pd.DataFrame(data)
sorted_df = df.sort_values(by='Age')
print(sorted_df)

문제 4: 특정 조건에 맞는 데이터 필터링하기
- 다음과 같은 DataFrame이 주어졌을 때, 나이가 25세 이상인 사람들의 데이터만 추출하세요.
data = {'Name': ['John', 'Alice', 'Bob', 'Eve'],
'Age': [28, 24, 22, 30],
'City': ['New York', 'Los Angeles', 'Chicago', 'Boston']}
df = pd.DataFrame(data)
filtered_df = df[df['Age'] >= 25]
print(filtered_df)

문제 5: 새로운 컬럼 추가하기
- 위 4번에서 만든 DataFrame에 'Salary'라는 새로운 컬럼을 추가하고, 아래 값을 넣어 보세요
df['Salary'] = [50000, 60000, 70000, 80000]
df

문제 6: Groupby를 이용한 집계
- 다음과 같은 DataFrame에서 City를 기준으로 평균 나이를 계산하세요
data = {'Name': ['John', 'Alice', 'Bob', 'Eve', 'Tom'],
'Age': [28, 24, 22, 30, 40],
'City': ['New York', 'Los Angeles', 'Chicago', 'Boston', 'New York']}
df = pd.DataFrame(data)
avg_age = df.groupby('City')['Age'].mean()
print(avg_age)

문제 7: 데이터 프레임 합치기 (Merge)
data1 = {'Name': ['John', 'Alice', 'Bob'],
'Age': [28, 24, 22]}
data2 = {'Name': ['John', 'Alice', 'Eve'],
'City': ['New York', 'Los Angeles', 'Boston']}
df1 = pd.DataFrame(data1)
df2 = pd.DataFrame(data2)
merged_df = pd.merge(df1, df2, on='Name')
print(merged_df)
문제 8: pivot_table 사용하기
- pivot_table을 사용하여 다음과 같은 DataFrame에서 각 도시(City)별로 직업(Job)의 평균 급여(Average Salary)를 계산하세요
data = {'Name': ['John', 'Alice', 'Bob', 'Eve', 'Tom', 'Smith'],
'City': ['New York', 'Los Angeles', 'Chicago', 'Boston', 'New York', 'Los Angeles'],
'Job': ['Engineer', 'Doctor', 'Engineer', 'Manager', 'Manager', 'Engineer'],
'Salary': [90000, 110000, 80000, 95000, 105000, 92000]}
df = pd.DataFrame(data)
avg_salary = df.pivot_table(index='City', columns='Job', values='Salary')
print(avg_salary)
