본문 바로가기
Data Science/Data Analysis

[파이썬으로 하는 데이터 분석] 7. 선택 - 우당탕탕 개발자 되기 프로젝트

by 우당탕탕 개발자 2023. 10. 7.
728x90
반응형

 

선택은 매우 중요한데, 선택에는 row 선택과 column 선택, 값(원소) 선택이 있습니다.

먼저 row 선택에서는 loc iloc를 사용합니다.

DataFrame 이름.loc[인덱스 이름] 형식으로 작성해 주면 인덱스 이름을 갖는 row를 선택하여 해당 row가 가지고 있는 column을 보여줍니다.

DataFrame 이름.iloc[인덱스 번호] 형식으로 작성해 주면 해당 번호의 인덱스 row를 선택하여 해당 row가 가지고 있는 column을 보여줍니다. iloc의 i는 integer이며 loc에서 인덱스 이름 형식으로 작성해 준 것을 정수 형태로 작성하는 것입니다.

loc와 iloc를 사용하여 row를 선택할 때 여러 개의 row를 선택하고자 한다면, 파이썬에서 사용한 슬라이싱 개념과 방식을 동일하게 활용하면 됩니다.

loc를 사용할 때는 인덱스 이름을 슬라이싱 하면 되고, iloc를 사용할 때는 인덱스 번호를 슬라이싱 하면 됩니다.

 

iloc로 여러 row를 선택할 때 단순히 [x, y] 형식으로 작성한다면 2차원 배열의 형태를 지닌 DataFrame의 배열 위치를 의미하게 되어 row 선택이 되지 않고 x, y의 해당 값이 반환되게 됩니다.

따라서 여러 row를 선택하고자 한다면 인덱스 값을 묶어준 [x, y] 형식을 다시 한번 [ ]로 묶어주어 [[x, y]] 형식으로 작성해 줘야 x row와 y row가 선택되어 반환됩니다.

 

column 선택은 단순히 확인할 column의 이름을 선택해 주면 됩니다.

DataFrame 이름['column 이름'] 형식으로 작성하거나 DataFrame 이름.column 이름 형식으로 작성하면 됩니다.

만약 1개의 column을 선택하면 Series 형태로 결과가 반환됩니다.

column 선택에서도 여러 column을 선택하고자 할 때는 해당 column의 이름을 리스트 형식으로 묶어준 것을 다시 한번 [ ]로 묶어줘야 합니다. 1개의 column을 선택하더라도 [ ]로 묶어 2차원의 형태로 나타내면 DataFrame의 형태로 결과를 반환합니다.

 

row 선택과 column 선택을 알아봤으면 DataFrame에서 각각의 값(원소)만을 선택하는 방법도 알아보겠습니다.

값(원소) 선택은 row 선택과 동일하게 loc iloc를 사용합니다.

값(원소) 선택을 할 때는 각 row와 column을 따로 지정해 주면 되므로, 2차원 배열 row와 column을 선택해 주면 됩니다.

콤마(,)를 기준으로 row와 column을 구분하여 작성해 주고, 만약 각 row와 column를 여러 개 선택하고자 한다면 각 row와 column을 리스트로 선택한 결과를 콤마(,) 기준으로 구분하여 작성해 주면 됩니다.

iloc에서 슬라이싱을 활용해 row를 선택한 것처럼 값(원소)을 선택할 때도 iloc를 활용한다면 각 row와 column을 슬라이싱을 활용해 선택할 수도 있습니다.

반응형

선택을 할 때 조건을 활용하여 해당 조건을 만족하는 row, column, 값(원소)만 선택하여 반환할 수도 있습니다.

column을 선택할 때 사용한 방법처럼 DataFrame 이름[] 형식을 활용하면 됩니다.

DataFrame 이름[조건] 형식으로 작성하면 해당 조건식을 만족하는 결과만 선택되게 됩니다.

조건은 boolean 연산으로 작성되며 조건이 참인 값과 거짓인 값으로 나뉘어 선택되고 출력됩니다.

 

isin() 메서드를 사용하여 선택할 수도 있습니다. isin() 메서드는 DataFrame 이름[column 이름].isin([값(원소)]) 형식으로 작성하면 선택한 column에 해당 값이 있는지 판별해 줍니다.

isin() 메서드를 활용하여 조건을 줄 수도 있습니다.

728x90
반응형