[27일차]Pandas index 주의사항

김준석·2024년 1월 2일

pandas에서 index는 파이썬에서의 index와는 다른 형태를 띄고 있다고 계속해서 설명했다.

하지만 예외적으로 파이썬에서 사용되는 index 넘버가 쓰일때가 있는데,

바로 index가 문자열일 경우이다.

data = {'과일':'바나나','색깔':'노랑','가격':'4500'}
data_set = pd.Series(data)
data_set

위와 같이 인덱스가 문자열인 Series를 만들었다.

이후 인덱스를 불러올때에

data_set['과일']
data_set[0]

두 코드 모두 ‘바나나’를 결과값으로 가져온다.

🔎왜일까?🔎

index가 문자열일 경우 pandas에서는 파이썬과 동일한 정수열 index 넘버링을 해준다.

정수 인덱스? 인덱스 레이블?

  • 인덱스가 문자열일 경우 Series객체는 파이썬에서 사용되는 개념인 [정수 인덱스]를 사용할 수 있다는 원칙이 있다.
  • Series 객체는 [인덱스 레이블] 기준 연산이 우선된다.

삭제 연산은 인덱스 레이블 접근만 허용

  • 조회는 데이터를 파괴하지 않기에 [정수 인덱스]를 통한 방식도 허용하나

  • del을 이용한 삭제는 [인덱스 레이블] 방식만 허용한다.

  • 정수 인덱스 형태로 del 메소드 처리

del data_set[0]

KeyError 발생

  • 인덱스 레이블 형태로 del 메소드 처리
del data_set['과일']

성공적으로 됨.

0개의 댓글