Pandas 데이터 프레임을 녹이려면 어떻게 해야 하나요?
Pandas 데이터 프레임을 녹이려면 여러 열이 있는 넓은 형식에서 긴 형식으로 변환해야 합니다. '변수'와 '값'이라는 두 개의 기본 열이 있습니다. 이는 Melt() 함수를 사용하여 달성할 수 있습니다.
문제 1: 데이터프레임을 녹여 열을 행으로 바꾸기
df = df.melt(id_vars=['Name', 'Age'], var_name='Subject', value_name='Grades')
이렇게 하면 원본 데이터프레임이 '이름', '나이', '주제' 및 '성적' 열이 있는 원하는 형식입니다. '제목' 열에는 원래 열 헤더가 포함되고 '성적'에는 해당 값이 포함됩니다.
문제 2: 특정 열을 포함하도록 녹은 데이터 필터링
df = df.melt(id_vars=['Name', 'Age'], var_name='Subject', value_name='Grades') filtered_df = df[df['Subject'] == 'Math']
녹은 데이터프레임을 필터링하면 원하지 않는 열을 제거할 수 있습니다. 이 경우에는 'Subject'가 'Math'로 설정된 행만 유지됩니다.
문제 3: 녹은 데이터를 그룹화하고 점수별로 정렬
df = df.melt(id_vars=['Name', 'Age'], var_name='Subject', value_name='Grades') sorted_df = df.groupby('value').agg({'Name': ', '.join, 'Subject': ', '.join}) sorted_df = sorted_df.sort_values('value')
이렇게 하면 '값' 열에 중복된 값이 있는 행이 병합되어 '이름' 및 '제목' 열이 쉼표로 구분된 값으로 집계됩니다. 그런 다음 결과를 정렬하여 등급을 오름차순으로 정렬합니다.
문제 4: 녹은 데이터 프레임 풀기
unmelted_df = df.pivot(index=['Name', 'Age'], columns='Subject', values='Grades')
녹은 데이터 프레임을 원래 형식으로 다시 변환하려면, 피벗() 함수를 사용할 수 있습니다. 이렇게 하면 데이터를 '이름' 및 '나이' 열별로 그룹화하고 '제목' 열을 피벗하여 원래 데이터프레임 모양을 만듭니다.
문제 5: 녹은 데이터를 그룹화하고 과목과 성적을 연결합니다
df = df.melt(id_vars=['Name', 'Age'], var_name='Subject', value_name='Grades') grouped_df = df.groupby('Name').agg({'Subject': ', '.join, 'Grades': ', '.join})
문제 3과 유사하게 녹은 데이터프레임을 '이름'으로 그룹화하고 쉼표를 사용하여 'Subject' 및 'Grades' 열을 연결합니다. 결과는 과목과 성적을 나열하는 한 사람당 하나의 행이 있는 데이터 프레임입니다.
문제 6: 모든 열을 값으로 포함하는 데이터 프레임 녹이기
df = df.melt(value_name='Value', var_name='Column')
To 모든 열을 값으로 사용하여 데이터프레임을 녹이려면 Melt() 함수에서 id_vars 인수를 생략하세요. 이렇게 하면 '열' 열에 원래 열 헤더가 나열되고 '값' 열에 해당 값이 포함되는 데이터프레임이 생성됩니다.
위 내용은 `melt()` 함수를 사용하여 Pandas DataFrame을 어떻게 녹이고 조작합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!