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 중국어 웹사이트의 기타 관련 기사를 참조하세요!