Pandas 데이터 프레임에서 튜플 열을 별도의 열로 분할하는 방법은 무엇입니까?

DDD
풀어 주다: 2024-10-25 02:42:02
원래의
673명이 탐색했습니다.

How to split a column of tuples into separate columns in a Pandas dataframe?

Pandas 데이터 프레임 열에서 튜플을 추출하는 방법

문제:

Pandas 데이터 프레임에서 , 튜플을 포함하는 열을 갖는 것이 일반적입니다. 그러나 이러한 튜플을 사용하여 작업하는 것은 번거로울 수 있습니다. 분석을 용이하게 하려면 이러한 열을 개별 튜플 요소를 포함하는 여러 열로 분할하는 것이 바람직한 경우가 많습니다.

해결책:

튜플 열을 별도의 열로 변환하려면 , 다음 단계를 따르세요.

  1. tolist() 메서드를 사용하여 열을 튜플 목록으로 변환합니다.

    <code class="python">column_list = column.tolist()</code>
    로그인 후 복사
  2. 새 항목 만들기 튜플 목록의 데이터 프레임:

    <code class="python">new_df = pd.DataFrame(column_list, index=dataframe.index)</code>
    로그인 후 복사
  3. 새 데이터 프레임을 원래 데이터 프레임에 새 열로 할당:

    <code class="python">dataframe[['column_a', 'column_b']] = new_df[['0', '1']]</code>
    로그인 후 복사

예:

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

<code class="python">>>> d1
   y norm test  y norm train  len(y_train)  len(y_test)  \
0    64.904368    116.151232          1645          549
1    70.852681    112.639876          1645          549

                                    SVR RBF  \
0   (35.652207342877873, 22.95533537448393)
1  (39.563683797747622, 27.382483096332511)

                                        LCV  \
0  (19.365430594452338, 13.880062435173587)
1  (19.099614489458364, 14.018867136617146)

                                   RIDGE CV  \
0  (4.2907610988480362, 12.416745648065584)
1    (4.18864306788194, 12.980833914392477)

                                         RF  \
0   (9.9484841581029428, 16.46902345373697)
1  (10.139848213735391, 16.282141345406522)

                                           GB  \
0  (0.012816232716538605, 15.950164822266007)
1  (0.012814519804493328, 15.305745202851712)

                                             ET DATA
0  (0.00034337162272515505, 16.284800366214057)  j2m
1  (0.00024811554516431878, 15.556506191784194)  j2m
>>></code>
로그인 후 복사

LCV 열을 개별 열 LCV-a 및 LCV-b로 분할하려면 다음 코드를 사용할 수 있습니다.

<code class="python">df[['LCV-a', 'LCV-b']] = pd.DataFrame(df['LCV'].tolist(), index=df.index)</code>
로그인 후 복사

결과 데이터 프레임은 다음과 같습니다.

<code class="python">>>> df
   y norm test  y norm train  len(y_train)  len(y_test)  \
0    64.904368    116.151232          1645          549
1    70.852681    112.639876          1645          549

                                    SVR RBF  \
0   (35.652207342877873, 22.95533537448393)
1  (39.563683797747622, 27.382483096332511)

                                        LCV-a  LCV-b  \
0  19.365430594452338  13.880062435173587
1  19.099614489458364  14.018867136617146

                                   RIDGE CV  \
0  (4.2907610988480362, 12.416745648065584)
1    (4.18864306788194, 12.980833914392477)

                                         RF  \
0   (9.9484841581029428, 16.46902345373697)
1  (10.139848213735391, 16.282141345406522)

                                           GB  \
0  (0.012816232716538605, 15.950164822266007)
1  (0.012814519804493328, 15.305745202851712)

                                             ET DATA
0  (0.00034337162272515505, 16.284800366214057)  j2m
1  (0.00024811554516431878, 15.556506191784194)  j2m</code>
로그인 후 복사

위 내용은 Pandas 데이터 프레임에서 튜플 열을 별도의 열로 분할하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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