>백엔드 개발 >파이썬 튜토리얼 >Pandas에서 두 개의 DataFrame을 동일한 행 수로 결합하는 방법은 무엇입니까?

Pandas에서 두 개의 DataFrame을 동일한 행 수로 결합하는 방법은 무엇입니까?

Barbara Streisand
Barbara Streisand원래의
2024-10-26 19:40:03419검색

How to Combine Two DataFrames with Equal Number of Rows in Pandas?

Pandas에서 두 데이터 프레임의 행 연결

키를 고려하지 않고 동일한 수의 행을 사용하여 두 데이터 프레임 df_a 및 df_b를 가로로 연결하려면 , 축 매개변수가 1로 설정된 concat 함수를 사용합니다.

<code class="python">pd.concat([df_a, df_b], axis=1)</code>

예를 들어 다음 두 데이터프레임을 고려합니다.

<code class="python">dict_data = {'Treatment': ['C', 'C', 'C'], 'Biorep': ['A', 'A', 'A'], 'Techrep': [1, 1, 1], 'AAseq': ['ELVISLIVES', 'ELVISLIVES', 'ELVISLIVES'], 'mz':[500.0, 500.5, 501.0]}
df_a = pd.DataFrame(dict_data)
dict_data = {'Treatment1': ['C', 'C', 'C'], 'Biorep1': ['A', 'A', 'A'], 'Techrep1': [1, 1, 1], 'AAseq1': ['ELVISLIVES', 'ELVISLIVES', 'ELVISLIVES'], 'inte1':[1100.0, 1050.0, 1010.0]}
df_b = pd.DataFrame(dict_data)</code>

축=1로 concat 함수를 사용하면 이러한 데이터프레임을 열 단위로 연결할 수 있습니다.

<code class="python">pd.concat([df_a, df_b], axis=1)</code>

이렇게 하면 행 수가 동일하고(3) 열 수가 두 데이터프레임의 열 합계(9)와 동일한 데이터프레임이 생성됩니다. :

        AAseq Biorep  Techrep Treatment     mz      AAseq1 Biorep1  Techrep1  \
0  ELVISLIVES      A        1         C  500.0  ELVISLIVES       A         1   
1  ELVISLIVES      A        1         C  500.5  ELVISLIVES       A         1   
2  ELVISLIVES      A        1         C  501.0  ELVISLIVES       A         1   

  Treatment1  inte1  
0          C   1100  
1          C   1050  
2          C   1010  

겹치는 열이 없으므로 병합된 데이터 프레임은 열을 단일 테이블로 직접 결합합니다.

또한 인덱스를 사용하여 데이터 프레임을 병합할 수 있습니다. 동일한 결과를 제공하는 동일한 수의 행:

<code class="python">df_a.merge(df_b, left_index=True, right_index=True)</code>

위 내용은 Pandas에서 두 개의 DataFrame을 동일한 행 수로 결합하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.