Pandas에서 문자열 열을 여러 열로 분할하는 방법


다음 기본 구문을 사용하여 Pandas DataFrame의 문자열 열을 여러 열로 분할할 수 있습니다.

 #split column A into two columns: column A and column B
df[[' A ',' B ']] = df[' A ']. str . split (' , ', 1 , expand= True )

다음 예에서는 이 구문을 실제로 사용하는 방법을 보여줍니다.

예 1: 열을 쉼표로 나누기

다음 코드는 쉼표를 기준으로 Pandas DataFrame의 열을 두 개의 개별 열로 분할하는 방법을 보여줍니다.

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['Mavs, West', 'Spurs, West', 'Nets, East'],
                   ' points ': [112, 104, 127]})

#view DataFrame
df

	team points
0 Mavs, West 112
1 Spurs, West 104
2 Nets, East 127

#split team column into two columns
df[[' team ', ' conference ']] = df[' team ']. str . split (' , ', 1 , expand= True )

#view updated DataFrame
df

	team points conference
0 Mavs 112 West
1 Spurs 104 West
2 Nets 127 East

원하는 경우 분할을 수행한 후 열을 다시 정렬할 수도 있습니다.

 #reorder columns
df = df[[' team ', ' conference ', ' points ']]

#view DataFrame
df

	team conference points
0 Mavs West 112
1 Spurs West 104
2 Nets East 127

예 2: 다른 구분 기호로 열 분할

동일한 구문을 사용하여 열을 다른 구분 기호로 나눌 수 있습니다.

예를 들어, 열을 공백 으로 나눌 수 있습니다.

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['Mavs West', 'Spurs West', 'Nets East'],
                   ' points ': [112, 104, 127]})

#split team column into two columns
df[[' team ', ' conference ']] = df[' team ']. str . split (' ', 1 , expand= True )

#view updated DataFrame
df

	team conference points
0 Mavs West 112
1 Spurs West 104
2 Nets East 127

슬래시를 사용하여 열을 나눌 수도 있습니다.

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['Mavs/West', 'Spurs/West', 'Nets/East'],
                   ' points ': [112, 104, 127]})

#split team column into two columns
df[[' team ', ' conference ']] = df[' team ']. str . split (' / ', 1 , expand= True )

#view updated DataFrame
df

	team conference points
0 Mavs West 112
1 Spurs West 104
2 Nets East 127

이 구문을 사용하면 원하는 구분 기호로 열을 분할할 수 있습니다.

추가 리소스

Pandas DataFrame에 행을 추가하는 방법
Pandas DataFrame에 Numpy 배열을 추가하는 방법
Pandas DataFrame에서 행 수를 계산하는 방법

의견을 추가하다

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