컬럼에 그냥 인덱싱할 때와 iloc를 써서 인덱싱할 때 출력값이 달라요.

df = pd.read_csv('../input/bigdatacertificationkr/basic1.csv')
print(df['f1'].sort_values(ascending=False).head(12))
print(df['f1'].sort_values(ascending=False).iloc[9])
print(df['f1'].sort_values(ascending=False)[9])
위의 코드를 실행하면 하나는 88, 하나는 74가 나옵니다..
74는 어디서 나오는 건지 모르겠어요..
print(df['f1'].sort_values(ascending=False)[0])은 NaN나오덴데.. 그냥 인덱싱하면 행을 나타내진 않나요?
답변 1
0
df['f1'].sort_values(ascending=False).head(12): 정렬된 'f1' 열의 상위 12개 값을 반환df['f1'].sort_values(ascending=False).iloc[9]: 정렬된 'f1' 열에서 10번째 값을 반환
(iloc는 위치 기반 인덱싱을 사용하므로 0부터 시작).df['f1'].sort_values(ascending=False)[9]: 이 코드는 iloc와는 달라요 loc와 같습니다. 그래서 인덱스 이름이 9인 것을 찾는 것이고df['f1']과 같이 컬럼을 선택했기에 행이 나오진 않습니다. 값이 나옵니다. 인덱스 0이 NaN값이었을 것 같네요!
작업형2 모의문제1 (30강)
0
18
1
수강 기간 연장 문의 드립니다.
0
21
1
수강 계획과 관련해 문의 드립니다.
0
19
1
작업형1 - 연습문제 16~39 풀이는 몇강을 보면 되나요?
0
45
2
작업형 1 -연습문제 4-6
0
33
2
작업형 1 유형 부분
0
40
2
작업형 1 (삭제예정, 구 버전)
0
50
2
수강기간 연장 문의드립니다.
0
35
1
2유형 레이블 인코딩 VS 원핫 인코딩
0
36
3
수강기간 연장 문의드립니다.
0
38
1
인덱스 슬라이싱
0
35
2
질문 드립니다.
0
50
2
강의 내용 관련 질문드립니다~
0
46
2
수강 연장 문의
0
63
2
강의자료 일괄 다운로드
0
58
2
수강기간 연장 문의드립니다
0
47
2
list 문제 질문드립니다~
0
38
2
빅분기 실기 12회 재도전
0
62
2
강의 기간 연장 가능여부 검토 요청건
0
50
2
수강기간 연장 문의 드립니다
0
45
2
수강기간 연장 문의드립니다
0
52
2
질문이요
0
57
2
수강기간 연장 문의드립니다.
0
60
2
문제 3-2 질문드립니다
0
47
2





