>  기사  >  백엔드 개발  >  Pandas에서 두 DataFrame의 행을 어떻게 연결할 수 있으며, 데이터프레임을 결합하는 대체 방법이 있습니까?

Pandas에서 두 DataFrame의 행을 어떻게 연결할 수 있으며, 데이터프레임을 결합하는 대체 방법이 있습니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-10-30 03:44:281038검색

How can I concatenate rows of two DataFrames in Pandas, and are there any alternative methods for combining dataframes?

Pandas에서 두 데이터프레임 행 연결: 가이드

Pandas에서 데이터 작업을 할 때 다음 작업이 필요한 경우가 종종 있습니다. 여러 소스의 데이터를 결합합니다. 이는 다양한 방법을 통해 달성할 수 있으며 그 중 하나가 연결입니다. 연결을 사용하면 데이터 프레임의 수평 정렬 및 병합이 가능해 데이터에 대한 포괄적인 보기를 제공할 수 있습니다.

두 데이터 프레임의 행 연결

두 데이터 프레임의 행을 연결하는 프로세스 , df_a 및 df_b는 간단합니다. concat 함수를 호출하고 axis=1을 지정하면 데이터프레임을 열 단위로 연결할 수 있으며, 결과적으로 df_a 및 df_b와 동일한 행 수(nRow)와 숫자의 합과 동일한 열 수를 갖는 데이터프레임이 생성됩니다.

다음 예를 고려하세요.

<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>

이러한 데이터 프레임을 가로로 연결하려면 다음 코드를 사용합니다.

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

결과 데이터프레임은 다음과 같은 구조를 갖습니다:

<code class="python">        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>

대체 방법

연결 외에도 데이터프레임을 결합하는 데 사용할 수 있는 대체 방법이 있습니다. 이러한 방법에는 병합과 조인이 포함됩니다.

병합

병합 데이터 프레임은 특정 열이나 키를 기반으로 이를 결합합니다. 이는 데이터프레임이 공통 열을 공유하고 해당 열을 기반으로 데이터를 결합하려는 경우에 유용합니다. 행 수가 동일한 위에 제공된 데이터 프레임 df_a 및 df_b의 경우 다음과 같이 인덱스를 사용하여 병합할 수 있습니다.

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

Joining

Joining 데이터프레임은 병합과 유사하지만 특정 열을 기준으로 데이터프레임을 결합하는 대신 행 위치를 기준으로 데이터프레임을 조인합니다. 다시 말하지만, 행 수가 동일하고 중복 인덱스가 없는 df_a 및 df_b의 경우 다음과 같이 조인할 수 있습니다.

<code class="python">df_a.join(df_b)</code>

사용할 방법의 선택은 특정 데이터의 요구 사항에 따라 다릅니다. 분석 작업. 연결, 병합 및 조인은 모두 데이터프레임을 결합하는 편리한 방법을 제공하고 다양한 시나리오를 처리할 수 있는 유연성을 제공합니다.

위 내용은 Pandas에서 두 DataFrame의 행을 어떻게 연결할 수 있으며, 데이터프레임을 결합하는 대체 방법이 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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