본문 바로가기
개발 기록/python

[판다스] 종류별로 다시 컬럼 만들기

by Ratataca 2023. 9. 1.
import pandas as pd

# 기존 데이터프레임 생성 (이전 예제에서 사용한 데이터 활용)
data = {
    '고장접수번호': [1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
    '시험종류': ['A', 'B', 'A', 'C', 'B', 'A', 'C', 'B', 'A', 'B'],
    '시험성공여부': [True, False, True, True, False, True, False, True, False, True]
}

df = pd.DataFrame(data)

# 고장접수번호 별 시험종류별 시험수행 성공 여부에 대한 카운트 계산
result = df.groupby(['고장접수번호', '시험종류', '시험성공여부']).size().unstack(fill_value=0)

# 새로운 데이터프레임 생성
new_df = pd.DataFrame()

# 시험종류별로 'T'와 'F' 칼럼 추가 및 값 채우기
for test_type in df['시험종류'].unique():
    t_col = f"{test_type}_T"
    f_col = f"{test_type}_F"
    
    if 'T' not in new_df.columns:
        new_df['T'] = 0
    if 'F' not in new_df.columns:
        new_df['F'] = 0
    
    new_df[t_col] = result.loc[result.index.get_level_values('시험종류') == test_type, True].values
    new_df[f_col] = result.loc[result.index.get_level_values('시험종류') == test_type, False].values

print(new_df)

댓글