Pandas에서 두 열을 결합하는 방법(예제 포함)


다음 구문을 사용하여 Pandas DataFrame에서 두 개의 텍스트 열을 하나로 결합할 수 있습니다.

 df[' new_column '] = df[' column1 '] + df[' column2 ']

열 중 하나가 아직 문자열이 아닌 경우 astype(str) 명령을 사용하여 변환할 수 있습니다.

 df[' new_column '] = df[' column1 ']. astype ( str )+df[' column2 ']

그리고 다음 구문을 사용하여 여러 텍스트 열을 하나로 결합할 수 있습니다.

 df[' new_column '] = df[[' col1 ', ' col2 ', ' col3 ', ...]]. agg (' '. join , axis= 1 )

다음 예에서는 실제로 텍스트 열을 결합하는 방법을 보여줍니다.

예시 1: 두 열 결합

다음 코드는 Pandas DataFrame에서 두 개의 텍스트 열을 하나로 결합하는 방법을 보여줍니다.

 import pandas as pd

#create dataFrame
df = pd. DataFrame ({' team ': ['Mavs', 'Lakers', 'Spurs', 'Cavs'],
                   ' first ': ['Dirk', 'Kobe', 'Tim', 'Lebron'],
                   ' last ': ['Nowitzki', 'Bryant', 'Duncan', 'James'],
                   ' points ': [26, 31, 22, 29]})

#combine first and last name column into new column, with space in between
df[' full_name '] = df[' first '] + ' ' + df[' last ']

#view resulting dataFrame
df

team first last points full_name
0 Mavs Dirk Nowitzki 26 Dirk Nowitzki
1 Lakers Kobe Bryant 31 Kobe Bryant
2 Spurs Tim Duncan 22 Tim Duncan
3 Cavs LeBron James 29 LeBron James

이름과 성 열을 사이에 공백으로 결합했지만 하이픈과 같은 다른 구분 기호를 사용할 수도 있습니다.

 #combine first and last name column into new column, with dash in between
df[' full_name '] = df[' first '] + ' - ' + df[' last ']

#view resulting dataFrame
df

team first last points full_name
0 Mavs Dirk Nowitzki 26 Dirk - Nowitzki
1 Lakers Kobe Bryant 31 Kobe - Bryant
2 Spurs Tim Duncan 22 Tim - Duncan
3 Cavs Lebron James 29 Lebron - James

예 2: 텍스트로 변환하고 두 열 결합

다음 코드는 열을 텍스트로 변환한 후 다른 열에 결합하는 방법을 보여줍니다.

 import pandas as pd

#create dataFrame
df = pd. DataFrame ({' team ': ['Mavs', 'Lakers', 'Spurs', 'Cavs'],
                   ' first ': ['Dirk', 'Kobe', 'Tim', 'Lebron'],
                   ' last ': ['Nowitzki', 'Bryant', 'Duncan', 'James'],
                   ' points ': [26, 31, 22, 29]})

#convert points to text, then join to last name column
df[' name_points '] = df[' last '] + df[' points ']. astype ( str )

#view resulting dataFrame
df

        team first last points name_points
0 Mavs Dirk Nowitzki 26 Nowitzki26
1 Lakers Kobe Bryant 31 Bryant31
2 Spurs Tim Duncan 22 Duncan22
3 Cavs LeBron James 29 James29

예시 3: 2개 이상의 열 결합

다음 코드는 여러 열을 하나로 결합하는 방법을 보여줍니다.

 import pandas as pd

#create dataFrame
df = pd. DataFrame ({' team ': ['Mavs', 'Lakers', 'Spurs', 'Cavs'],
                   ' first ': ['Dirk', 'Kobe', 'Tim', 'Lebron'],
                   ' last ': ['Nowitzki', 'Bryant', 'Duncan', 'James'],
                   ' points ': [26, 31, 22, 29]})

#join team, first name, and last name into one column
df[' team_and_name '] = df[[' team ', ' first ', ' last ']]. agg (' '. join , axis= 1 )

#view resulting dataFrame
df

team first last points team_name
0 Mavs Dirk Nowitzki 26 Mavs Dirk Nowitzki
1 Lakers Kobe Bryant 31 Lakers Kobe Bryant
2 Spurs Tim Duncan 22 Spurs Tim Duncan
3 Cavs Lebron James 29 Cavs Lebron James

추가 리소스

Pandas: 두 열의 차이점을 찾는 방법
Pandas: 두 줄의 차이점을 찾는 방법
Pandas: 이름별로 열을 정렬하는 방법

의견을 추가하다

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다