겹치지만 동일하지 않은 행이 있는 두 개의 데이터 프레임이 있는 경우 특정 열을 기준으로 두 데이터 프레임을 병합할 수 있습니다. 한 항목에서 다른 항목에 정보를 추가하는 열입니다. 이 경우 df1과 df2라는 두 개의 데이터 프레임을 병합하려고 합니다. 여기서 df1에는 연령에 대한 정보가 포함되고 df2에는 성별에 대한 정보가 포함됩니다. 첫 번째 데이터프레임의 정보를 유지하면서 이를 수행하는 방법은 다음과 같습니다.
데이터프레임을 병합하고 첫 번째 데이터프레임의 정보를 유지하려면 set_index로 생성된 시리즈와 함께 맵 기능을 사용하세요.
<code class="python">df1['Sex'] = df1['Name'].map(df2.set_index('Name')['Sex'])</code>
예:
<code class="python">df1 = pd.DataFrame({'Name': ['Tom', 'Sara', 'Eva', 'Jack', 'Laura'], 'Age': [34, 18, 44, 27, 30], 'Sex': None}) df2 = pd.DataFrame({'Name': ['Tom', 'Paul', 'Eva', 'Jack', 'Michelle'], 'Sex': ['M', 'M', 'F', 'M', 'F']}) df1['Sex'] = df1['Name'].map(df2.set_index('Name')['Sex']) print(df1)</code>
출력:
Name Age Sex 0 Tom 34 M 1 Sara 18 NaN 2 Eva 44 F 3 Jack 27 M 4 Laura 30 NaN
동일한 결과를 얻는 또 다른 방법은 병합하는 것입니다. 왼쪽 조인을 사용하는 데이터 프레임:
<code class="python">df = df1.merge(df2[['Name', 'Sex']], on='Name', how='left')</code>
예:
<code class="python">df = df1.merge(df2[['Name', 'Sex']], on='Name', how='left') print(df)</code>
출력:
Name Age Sex 0 Tom 34 M 1 Sara 18 NaN 2 Eva 44 F 3 Jack 27 M 4 Laura 30 NaN
여러 열을 병합해야 하는 경우 지정된 추가 조인 열과 동일한 왼쪽 조인 접근 방식을 사용하세요.
<code class="python">df = df1.merge(df2[['Name', 'Sex', 'Year', 'Code']], on=['Year', 'Code'], how='left')</code>
중복 조인으로 인해 오류가 발생하는 경우 열이 있는 경우 중복을 제거하거나 매핑을 위해 사전을 사용하여 처리하세요.
위 내용은 첫 번째 DataFrame의 정보를 유지하면서 열을 기반으로 DataFrame을 병합하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!