2024/12/16 7

[Pandas] 피벗 테이블 - pivot_table()

Pivot Table (피벗 테이블)데이터를 요약하거나 재구조화 할때 유용하게 사용엑셀의 피벗테이블 과 유사데이터프레임을 특정 열을 기준으로 요약하고 집계 가능기본 구조 pivot_table()  함수를 사용아래와 같은 매개변수 제공pd.pivot_table( data, # 데이터프레임 values=None, # 집계할 값 index=None, # 행 기준으로 사용할 열 columns=None, # 열 기준으로 사용할 열 aggfunc='mean',# 집계 함수 (기본값: 평균) fill_value=None, # NaN 대체값 margins=False # 행과 열의 합계 표시 여부)예시 데이터import pandas as pddata = ..

Python/Pandas 2024.12.16

[Pandas] 그룹화 및 집계함수

GroupBy (그룹화)기준 열을 바탕으로 데이터를 그룹화 groupby() import pandas as pd# 예시 데이터프레임df = pd.DataFrame({ 'A': ['X', 'Y', 'X', 'Y', 'X', 'Y'], 'B': [10, 20, 30, 40, 50, 60], 'C': [5, 10, 15, 20, 25, 30]})# 'A' 열을 기준으로 그룹화grouped = df.groupby('A')# 그룹화된 객체 출력print(grouped)# 출력 groupby()  는 그룹화된 객체를 반환하며, 그룹별 연산을 하려면 추가적인 집계 함수가 필요함그룹화 후 집계 (Aggregation)그룹화 후 집계함수를 사용해 각 그룹에 대해 연산을 수행한다집계함수sum() - 합계m..

Python/Pandas 2024.12.16

[Pandas] 데이터 병합 - merge(), concat(), join()

merge()  함수SQL 의 JOIN 처럼 데이터를 '기준 열' 을 기준으로 병합inner joinouter joinleft joinright joinimport pandas as pd# 예시 데이터프레임df1 = pd.DataFrame({ 'A': [1, 2, 3], 'B': ['A1', 'B2', 'C3']})df2 = pd.DataFrame({ 'A': [1, 2, 4], 'C': ['X1', 'Y2', 'Z3']})# 'A' 열을 기준으로 병합merged_df = pd.merge(df1, df2, on='A')print(merged_df)# 출력 A B C0 1 A1 X11 2 B2 Y2  merge()  의 기본값은 inner join  병합 유형 내..

Python/Pandas 2024.12.16

[Pandas] 데이터 정렬 - sort_values(), sort_index(), rank()

sort_values()  를 사용한 데이터 정렬값을 기준으로 정렬할 때 사용import pandas as pd# 예시 데이터프레임df = pd.DataFrame({ 'A': [3, 1, 4, 2], 'B': [30, 10, 40, 20]})# 'A' 열을 기준으로 오름차순 정렬sorted_df = df.sort_values(by='A', ascending=True)print(sorted_df)# 출력 A B1 1 103 2 200 3 302 4 40 ascending=True  는 생략가능하며 기본값이 True 내림차순은  False  sort_index()  를 사용한 인덱스 정렬인덱스 기준으로 데이터프레임을 정렬할 때 사용# 인덱스를 기준으로 오름차순 정렬df_sor..

Python/Pandas 2024.12.16

[Pandas] 타입 변환 - astype()

astype()  을 이용한 타입 변환특정 열의 데이터를 다른 데이터 타입으로 변환import pandas as pddf = pd.DataFrame({ 'A': [1, 2, 3, 4], 'B': [10, 20, 30, 40]})# 'A' 열의 데이터 타입을 float으로 변환df['A'] = df['A'].astype(float)print(df.dtypes)# 출력A float64B int64dtype: object pd.to_numeric()  을 사용한 타입 변환문자열을 숫자로 변환오류가 발생하는 경우  errors='coerce'  옵션을 사용해 결측치로 변환df['A'] = pd.to_numeric(df['A'], errors='coerce')print(df) pd.to_d..

Python/Pandas 2024.12.16

[Pandas] 필터링

조건을 사용한 필터링조건을 걸어 특정 열의 값이 일정 조건을 만족하는 행을 선택할 수 있음import pandas as pddf = pd.DataFrame({ 'A': [1, 2, 3, 4], 'B': [10, 20, 30, 40]})# 'A' 열 값이 2보다 큰 행 선택filtered_df = df[df['A'] > 2]print(filtered_df)# 출력 A B2 3 303 4 40여러 조건을 결합하여 필터링 & (AND)또는 | (OR) 연산자를 사용하여 여러 조건을 결합 가능# 'A' 열 값이 2보다 크고, 'B' 열 값이 30보다 작은 행 선택filtered_df = df[(df['A'] > 2) & (df['B'] # 출력 A B2 3 30 ~  연산자 ..

Python/Pandas 2024.12.16

[Pandas] 데이터 접근 (at, loc)

1.  at  사용 (레이블 기반 접근)특정 행과 열을 지정하여 개별 값을 빠르게 접근단일 값만 조회 가능DataFrame.at[row_label, column_label]import pandas as pddf = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})print(df.at[1, 'B']) # 1행 'B' 열의 값 반환# 출력# 52.  iat  사용 (정수 기반 위치 접근)정수 기반 위치를 사용해 빠르게 값에 접근단일 값만 조회 가능DataFrame.iat[row_index, column_index]print(df.iat[1,1]) # 1번째 행, 1번째 열 의 값 반환# 출력# 5 3.   loc  사용 (레이블 기반 접근)행과 열의 레이블(labe..

Python/Pandas 2024.12.16