DataFrame slicing
dataframe의 경우 기본적으로 [ ] 연산자가 column 선택에 이용.
하지만 slicing은 row 레벨로 지원.
앞서 column 가져오기에서 봤듯이
DataFrame [ ] 연산자 안에 인덱스를 넣으면 key error가 뜬다.
2020/02/17 - [AI/데이터분석] - [pandas] DataFrame 원하는 column만 선택하기
그러나 slicing을 이용하면 원하는 row들을 가져올 수 있다.
row 선택하기
Series의 경우 [ ]로 row 선택이 가능하나,
DataFrame의 경우는 [ ] 는 기본적으로 column을 선택하도록 설계되어 있음.
.loc, .iloc 로 row 선택이 가능하다.
loc : 인덱스 자체를 사용
iloc : 0 based index로 사용.
이 두 함수는 , 를 사용하여 column 선택도 가능하다.
데이터의 총 개수가 891개인 것을 확인하고 인덱스를 바꿔주자.
마지막 데이터가 990 인덱스로 끝나는 것을 확인할 수 있다.
loc
여러개를 가져오고 싶을 때는 역시 리스트를 사용하여 넣어주면 된다.
iloc
데이터는 100 인덱스부터 시작하기 때문에 iloc[0]과 loc[100]은 동일한 결과를 보인다.
때문에 어떤 인덱스를 가지는 가와 관계없이 순서대로 가져오고 싶은 경우는
iloc 을 쓰면 된다.
리스트를 사용하여 여러개 가져오는 것도 가능하다.
row, column 동시에 선택하기
loc, iloc 속성을 이용할 때, 콤마를 이용하여 둘 다 명시 가능.
loc
iloc
iloc에 loc와 같은 방식으로 넣었더니 에러가 발생한다.
이는 iloc는 컬럼 또한 0 based index로 줘야하기 때문이다.
Survived 를 0으로 시작하여 순서대로 넣어주면 loc와 같은 컬럼 결과를 얻어낼 수 있다.
위 내용은 fastcampus 강의 내용을 정리한 것입니다.
'AI > 데이터분석' 카테고리의 다른 글
[pandas] DataFrame에 새 column 추가 & 삭제 (0) | 2020.02.18 |
---|---|
[pandas] DataFrame Boolean Selection (0) | 2020.02.18 |
[pandas] DataFrame 원하는 column만 선택하기 (0) | 2020.02.17 |
[pandas] 샘플 csv 데이터로 DataFrame 데이터 생성하기 (0) | 2020.02.17 |
[pandas] DataFrame 데이터 생성하기 (0) | 2020.02.17 |