Pandas를 사용하여 긴 데이터를 여러 변수가 포함된 넓은 형식으로 어떻게 재구성할 수 있나요?

Barbara Streisand
풀어 주다: 2024-10-30 07:38:27
원래의
569명이 탐색했습니다.

How can I reshape long data into a wide format with multiple variables using Pandas?

Pandas를 사용하여 긴 데이터를 와이드 형식으로 변경

긴 형식의 데이터로 작업할 때 긴 데이터를 와이드 형식으로 변경해야 할 수 있습니다. 더 나은 분석 및 시각화를 위한 와이드 형식입니다. 일반적인 과제 중 하나는 여러 변수를 기반으로 데이터를 재구성하는 것입니다.

다음 데이터 프레임을 고려하세요.

salesman  height  product  price
Knut      6        bat          5
Knut      6        ball         1
Knut      6        wand         3
Steve     5        pen          2
로그인 후 복사

목표는 이 데이터를 넓은 형식으로 재구성하는 것입니다.

salesman  height    product_1  price_1  product_2 price_2 product_3 price_3  
Knut      6        bat          5       ball      1        wand      3
Steve     5        pen          2        NA       NA        NA       NA
로그인 후 복사

melt/stack/unstack은 일반적으로 데이터 재구성에 사용되지만 이 특정 시나리오에는 적합하지 않을 수 있습니다.

이 문제에 대한 해결책은 다음 코드를 사용하여 찾을 수 있습니다.

<code class="python">import pandas as pd

# Create sample data
raw_data = {
    'salesman': ['Knut', 'Knut', 'Knut', 'Steve'],
    'height': [6, 6, 6, 5],
    'product': ['bat', 'ball', 'wand', 'pen'],
    'price': [5, 1, 3, 2]
}

df = pd.DataFrame(raw_data)

# Reshape data
df_wide = df.pivot_table(index=['salesman', 'height'], columns='product', values='price')

# Reset index to get it in the desired format
df_wide = df_wide.reset_index(level=[0, 1])

# Rename columns
new_columns = ['salesman', 'height'] + [f'product_{i}' for i in range(1, df_wide.shape[1] - 1)] + [f'price_{i}' for i in range(1, df_wide.shape[1] - 1)]
df_wide.columns = new_columns

# Handle missing values
df_wide.fillna("NA", inplace=True)</code>
로그인 후 복사

결과 데이터프레임 df_wide는 원하는 와이드 형식이 됩니다.

위 내용은 Pandas를 사용하여 긴 데이터를 여러 변수가 포함된 넓은 형식으로 어떻게 재구성할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!