Pandas dataframe에서 열을 분할하는 방법(예제 포함)


다음 방법을 사용하여 Pandas DataFrame의 열을 분할할 수 있습니다.

방법 1: 특정 열 이름으로 조각화

 df_new = df. loc [:,[' col1 ',' col4 ']]

방법 2: 범위 내 열 이름별로 분할

 df_new = df. loc [:, ' col1 ':' col4 ']

방법 3: 특정 열 인덱스 위치로 잘라내기

 df_new = df. iloc [:,[ 0,3 ] ]

방법 4: 열 인덱스 위치 범위별로 분할

 df_new = df. iloc [:, 0 : 3 ]

다음 각 방법에서 lociloc 사이의 미묘한 차이점에 유의하세요.

  • loc는 특정 레이블이 있는 행과 열을 선택합니다.
  • iloc은 특정 정수 위치 에서 행과 열을 선택합니다.

다음 예에서는 다음 pandas DataFrame에서 실제로 각 메서드를 사용하는 방법을 보여줍니다.

 import pandas as pd

#create DataFrame with six columns
df = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'],
                   ' points ': [18, 22, 19, 14, 14, 11, 20, 28],
                   ' assists ': [5, 7, 7, 9, 12, 9, 9, 4],
                   ' rebounds ': [11, 8, 10, 6, 6, 5, 9, 12],
                   ' steals ': [4, 3, 3, 2, 5, 4, 3, 8],
                   ' blocks ': [1, 0, 0, 3, 2, 2, 1, 5]})

#view DataFrame
print (df)

  team points assists rebounds steals blocks
0 A 18 5 11 4 1
1 B 22 7 8 3 0
2 C 19 7 10 3 0
3 D 14 9 6 2 3
4 E 14 12 6 5 2
5 F 11 9 5 4 2
6 G 20 9 9 3 1
7:28 4 12 8 5

예시 1: 특정 열 이름으로 잘라내기

다음 구문을 사용하여 바운스 열만 포함하는 새 DataFrame을 만들 수 있습니다.

 #slice columns team and rebounds
df_new = df. loc [:, [' team ', ' rebounds ']]

#view new DataFrame
print (df_new)

  team rebounds
0 to 11
1 B 8
2 C 10
3 D 6
4 E 6
5 F 5
6 G 9
7:12 a.m.

예시 2: 범위 내 열 이름으로 잘라내기

다음 구문을 사용하여 바운스 사이의 열만 포함하는 새 DataFrame을 만들 수 있습니다.

 #slice columns between team and rebounds
df_new = df. loc [:, ' team ': ' rebounds ']

#view new DataFrame
print (df_new)

  team points assists rebounds
0 A 18 5 11
1 B 22 7 8
2 C 19 7 10
3 D 14 9 6
4 E 14 12 6
5 F 11 9 5
6 G 20 9 9
7:28 4 12

예시 3: 특정 열 인덱스 위치로 잘라내기

다음 구문을 사용하여 인덱스 위치 03 의 열만 포함하는 새 DataFrame을 만들 수 있습니다.

 #slice columns in index positions 0 and 3
df_new = df. iloc [ :,[ 0,3 ]]

#view new DataFrame
print (df_new)

  team rebounds
0 to 11
1 B 8
2 C 10
3 D 6
4 E 6
5 F 5
6 G 9
7:12 a.m.

예시 4: 열당 슬라이스 인덱스 위치 범위

다음 구문을 사용하여 0 에서 3 사이의 인덱스 위치 범위에 있는 열만 포함하는 새 DataFrame을 만들 수 있습니다.

 #slice columns in index position range between 0 and 3
df_new = df. iloc [:, 0 : 3 ]

#view new DataFrame
print (df_new)

  team points assists
0 to 18 5
1 B 22 7
2 C 19 7
3 D 14 9
4 E 14 12
5 F 11 9
6 G 20 9
7:28 a.m. 4

참고 : 인덱스 위치 범위를 사용하는 경우 해당 범위의 마지막 인덱스 위치는 포함되지 않습니다. 예를 들어 인덱스 위치 3의 바운스 열 은 새 DataFrame에 포함되지 않습니다.

추가 리소스

다음 튜토리얼에서는 Pandas에서 다른 일반적인 작업을 수행하는 방법을 설명합니다.

Pandas DataFrame에서 첫 번째 행을 제거하는 방법
Pandas DataFrame에서 첫 번째 열을 제거하는 방법
Pandas에서 중복 열을 제거하는 방법

의견을 추가하다

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