inflearn logo
강의

Course

Instructor

[Side Project After Work] Big Data Analysis Certification Practical Exam (Type 1, 2, 3)

9th Session Past Exam Type (Task Type 3)

데이터프레임 슬라이싱 인덱싱 질문2

1

lrkink

2 asked

0

인덱싱에러.JPG.webp인덱싱에러1.JPG.webp

 

같은 질문 다시 드려서 죄송합니다;;;;;

(기출 9회의 작업형 1의 3번 문제를 풀고 있습니다.)

이전 인덱싱 혹은 슬라이싱 질문에서 df[숫자]는 행 선택만 되고 열 선택은 되지 않아 df.loc와 df.iloc를 사용했었는데 9번 기출에서 unstack한 경우에는 어째서 df[숫자]로 열선택이 가능한지에 대한 질문을 드렸습니다.

 

답변으로 기본적으로 df[숫자]는 인덱스 기반으로한 행 선택이고 unstack에서 컬럼명이 숫자(정수)로 바뀌어서 가능했다 라고 답변을 받았었습니다.

일반 df[숫자] → 행 선택 (인덱스 기반) 컬럼명이 정수인 df[숫자] → 열 선택 (컬럼명 기반)

그런데 이번에 9번 기출에 혹시나 하고 df[0]을 넣었는데 이 상황에서는 왜 에러가 나는 것인가요? 참고로 df를 새로 불러오고 시도해도 오류가 났었습니다.;;;

 

그런데 기출 9회 작업형 3에서는 df[:140]으로 데이터 분할을 합니다.... 무슨 차이 인가요?

python 머신러닝 빅데이터 pandas 빅데이터분석기사

Answer 1

0

communityai8509

안녕하세요, 인프런 AI 인턴입니다. lrkink 님의 질문에 대한 답변입니다.

질문하신 내용을 기준으로, Pandas 데이터프레임에서의 인덱싱 및 슬라이싱에 대한 혼란을 해소하는 데 도움을 드리겠습니다.

첫째, 일반적으로 df[slice] 구문을 사용할 때 slice가 정수값(정수 인덱스)을 받을 경우에는 해당 인덱스를 가진 행을 선택하게 됩니다. 그렇지만, 컬럼명이 정수로 설정된 경우에는 df[정수]가 컬럼 선택으로 작용할 수 있습니다. 이는 마치 딕셔너리에서 키를 사용하여 값을 조회하는 것과 유사합니다.

둘째, unstack 연산 이후에는 데이터프레임의 컬럼명이 숫자로 변환될 수 있습니다. 이 경우에는 df[0] 형태로 접근할 수 있는 이유입니다.

셋째, df[:n]은 슬라이싱으로 n개의 행을 선택하는데 사용됩니다. 이는 인덱스와 상관없이 행의 위치에 기반한 접근 방식입니다.

질문에서 df[0]을 사용하여 데이터 접근 시 에러가 발생한 이유는 데이터프레임의 컬럼명을 정수로 표시하는 상황이지 않은 경우에 KeyError가 발생할 수 있기 때문입니다. 이는 Pandas가 df[0]을 인덱스가 아닌 열 이름으로 인식할 수 없다는 것을 의미합니다.

마지막으로, 슬라이싱을 통해 df[:140]으로 접근하는 것은 데이터프레임의 앞 140개의 행을 선택하는 방법으로 정상 작동합니다. 이 접근 방식은 배열의 슬라이싱과 유사하게 작동하여 인덱스 위치에 기반합니다.

이와 관련하여 유사한 질문에 대한 추가 정보로 유사 답변을 확인해보실 수 있습니다:
- 빅데이터 분석기사(5회): 기출유형-작업형1 문제2 - pandas의 인덱싱과 관련된 다양한 사례가 설명되어 있습니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

단일표본검정, 샤피로검정, 윌콕슨검정

0

16

2

강의자료 다운로드 여부

0

13

1

문제에 첨부된 예시와 실제 출력된 샘플 비교

0

12

2

원핫 인코딩 관련

0

24

2

타겟 분리

0

20

2

Id 삭제

0

22

2

roc_auc_score 질문: 작업형2 모의문제3 09분 48초

0

22

2

원핫인코딩 코드 질문

0

19

2

map 함수 사용 필수적인가요

0

29

2

수강 기한 연장 문의드립니다.

0

34

2

34강 평가지표

0

30

2

103강 작업2형 전처리(레이블인코딩 부분) 오류

0

21

3

작업형1_section14 문의

0

18

2

작업형1_연습문제 7번 관련입니다.

0

23

2

데이터 프레임 슬라이싱 혹은 데이터 선택하기가 어렵습니다.

0

21

2

크로스 밸리데이션 질문

0

23

2

로지스틱 회귀분석 질문

0

23

2

수치형 데이터만 선택하여 푸는 경우에 오답확률이 높아질까요?

0

29

2

2유형 object 컬럼 인코딩 관련 질문

0

42

2

하이퍼파라미터 변수

0

35

2

52강 이원분산분석

0

31

2

실제시험환경에서 작업형1,2,3의 문제풀이 순서

0

39

2

독립표본검정

0

29

2

tranform을 쓰라는 힌트는 어디서 얻을 수 있나요??

0

41

2