이 글은 파이썬의 pandas 라이브러리를 이용하여 불러온 데이터에서 필요한 열(칼럼, Column)만 추출하는 방법에 대해 정리한 글이다.
pandas 라이브러리를 이용하여 데이터를 불러오는 방법은 아래 글을 참고하자.
파이썬 | pandas | csv, 텍스트(txt), 엑셀(xlsx) 데이터 불러오기
파이썬 | pandas | csv, 텍스트(txt), 엑셀(xlsx) 데이터 불러오기
이 글은 파이썬 라이브러리 중 데이터를 다룰 때 사용하는 pandas 라이브러리를 이용하여 엑셀(.xlsx), csv(.csv), 텍스트(.txt) 파일을 불러오는 방법에 대해 정리한 글이다. pandas 라이브러리 pandas 라이
luna-devstory.tistory.com
칼럼 명을 이용한 칼럼 추출
칼럼 명으로 데이터를 추출하는 방법에 대해 먼저 알아보자. 불러온 데이터는 다음과 같이 구성되어 있다.
이 중에서 추출하고자 하는 데이터 칼럼은 Date, Time, A11, A12, A21, A22, B11, B12, B21, B22, Event이다. 추출한 데이터 칼럼으로 새로운 데이터프레임을 생성할 것이다.
칼럼 명을 이용하여 칼럼을 추출할 때에는 DataFrame[['col1', 'col2', 'col3', ...]]
을 이용하면 된다. 여기서 중요한 것은 대괄호가 두 개라는 것이다.
new_df = data_df[['Date', 'Time', 'A11', 'A12', 'A21', 'A22', 'B11', 'B12', 'B21', 'B22', 'Event']]
data_df
: 원본 데이터가 데이터프레임의 형태로 저장되어 있는 변수new_df
: 원하는 칼럼만 추출한 데이터를 데이터프레임 형태로 저장할 변수
위 코드를 실행하여 new_df
변수를 출력해서 확인하면 아래와 같이 원본 데이터프레임(data_df
)에서 필요한 칼럼만 추출하여 새로운 데이터프레임이 생성된 것을 확인할 수 있다.
인덱스을 이용한 칼럼 추출
pandas의 함수와 칼럼 인덱스를 이용하여 필요한 칼럼을 추출하는 것도 가능하다. 데이터는 위와 동일하다.
칼럼의 인덱스는 0부터 순차적으로 이루어져 있다. (데이터프레임 상에서 눈에 보이지는 않지만 인덱스가 형성되어 있다.) 칼럼 인덱스를 이용하여 칼럼을 추출할 때에는 pandas의 iloc
함수를 사용한다. 이 함수는 인덱스를 이용해 행을 추출할 때에도 사용하니 기억하자.
iloc
함수를 이용하여 칼럼을 추출할 때에는 다음과 같이 사용한다.
DataFrame.iloc[:, [0, 1, 2, 3]]
위 코드는 DataFrame에서 행은 전체(:
), 열은 0번, 1번, 2번, 3번 열만 추출하겠다는 의미이다. 위 데이터에서는 No, Date, Time, A11의 열이 추출된다.
new_df = data_df.iloc[:, [0, 1, 2, 3]]
연속된 열의 경우 아래와 같이 추출할 수도 있다.
DataFrame.iloc[:, 0:3]
위 코드는 0번부터 3번에 해당하는 칼럼을 추출하고, 행은 전체 행(:
)을 추출한다는 의미이다.
iloc
함수를 이용하여 데이터를 추출하면 코드 상에서 어떤 칼럼을 추출했는지 알 수 없다는 단점이 있다.
요약
- 칼럼 명을 이용하거나 pandas의
iloc
함수를 이용하여 원하는 칼럼을 추출할 수 있다. - 칼럼 명을 이용하여 추출할 때에는 다음의 방법을 이용하여 추출할 수 있다.
DataFrame[['col1', 'col2', 'col3', ...]]
- iloc 함수를 이용하면 칼럼 인덱스를 이용하여 추출할 수 있고, 다음의 방법으로 추출이 가능하다.
DataFrame.iloc[:, [col_index1, col_index2, col_index3, ...]]
'Data Science > pandas' 카테고리의 다른 글
파이썬 | pandas | 데이터프레임의 전체 열(Column) 이름 가져오기 (1) | 2024.04.16 |
---|---|
파이썬 | pandas | 데이터프레임을 엑셀 파일로 저장하기 (with. csv & xlsx) (0) | 2024.04.04 |
파이썬 | pandas | replace 함수를 이용해 데이터프레임의 값 변경하기 (0) | 2024.03.26 |
파이썬 | pandas | 한글이 있는 csv 파일 불러올 때 발생하는 UnicodeDecodeError 해결 (0) | 2024.03.24 |
파이썬 | pandas | csv, 텍스트(txt), 엑셀(xlsx) 데이터 불러오기 (0) | 2024.03.16 |