반응형
3. Index
데이터에 접근할 수 있는 주소 값
import pandas as pd
data = {
'이름' : ['채치수', '정대만', '송태섭', '서태웅', '강백호', '변덕규', '황태산', '윤대협'],
'학교' : ['북산고', '북산고', '북산고', '북산고', '북산고', '능남고', '능남고', '능남고'],
'키' : [197, 184, 168, 187, 188, 202, 188, 190],
'국어' : [90, 40, 80, 40, 15, 80, 55, 100],
'영어' : [85, 35, 75, 60, 20, 100, 65, 85],
'수학' : [100, 50, 70, 70, 10, 95, 45, 90],
'과학' : [95, 55, 80, 75, 35, 85, 40, 95],
'사회' : [85, 25, 75, 80, 10, 80, 35, 95],
'SW특기' : ['Python', 'Java', 'Javascript', '', '', 'C', 'PYTHON', 'C#']
}
data
{'이름': ['채치수', '정대만', '송태섭', '서태웅', '강백호', '변덕규', '황태산', '윤대협'],
'학교': ['북산고', '북산고', '북산고', '북산고', '북산고', '능남고', '능남고', '능남고'],
'키': [197, 184, 168, 187, 188, 202, 188, 190],
'국어': [90, 40, 80, 40, 15, 80, 55, 100],
'영어': [85, 35, 75, 60, 20, 100, 65, 85],
'수학': [100, 50, 70, 70, 10, 95, 45, 90],
'과학': [95, 55, 80, 75, 35, 85, 40, 95],
'사회': [85, 25, 75, 80, 10, 80, 35, 95],
'SW특기': ['Python', 'Java', 'Javascript', '', '', 'C', 'PYTHON', 'C#']}
df = pd.DataFrame(data, index=['1번', '2번', '3번', '4번', '5번', '6번', '7번', '8번'])
df
이름 학교 키 국어 영어 수학 과학 사회 SW특기
1번 채치수 북산고 197 90 85 100 95 85 Python
2번 정대만 북산고 184 40 35 50 55 25 Java
3번 송태섭 북산고 168 80 75 70 80 75 Javascript
4번 서태웅 북산고 187 40 60 70 75 80
5번 강백호 북산고 188 15 20 10 35 10
6번 변덕규 능남고 202 80 100 95 85 80 C
7번 황태산 능남고 188 55 65 45 40 35 PYTHON
8번 윤대협 능남고 190 100 85 90 95 95 C#
df.index #현재 인덱스 값을 리스트로 표현
Index(['1번', '2번', '3번', '4번', '5번', '6번', '7번', '8번'], dtype='object
Index 이름 설정
df.index.name = '지원번호'
df
이름 학교 키 국어 영어 수학 과학 사회 SW특기
지원번호
1번 채치수 북산고 197 90 85 100 95 85 Python
2번 정대만 북산고 184 40 35 50 55 25 Java
3번 송태섭 북산고 168 80 75 70 80 75 Javascript
4번 서태웅 북산고 187 40 60 70 75 80
5번 강백호 북산고 188 15 20 10 35 10
6번 변덕규 능남고 202 80 100 95 85 80 C
7번 황태산 능남고 188 55 65 45 40 35 PYTHON
8번 윤대협 능남고 190 100 85 90 95 95 C#
Index 초기화
df.reset_index()
지원번호 이름 학교 키 국어 영어 수학 과학 사회 SW특기
0 1번 채치수 북산고 197 90 85 100 95 85 Python
1 2번 정대만 북산고 184 40 35 50 55 25 Java
2 3번 송태섭 북산고 168 80 75 70 80 75 Javascript
3 4번 서태웅 북산고 187 40 60 70 75 80
4 5번 강백호 북산고 188 15 20 10 35 10
5 6번 변덕규 능남고 202 80 100 95 85 80 C
6 7번 황태산 능남고 188 55 65 45 40 35 PYTHON
7 8번 윤대협 능남고 190 100 85 90 95 95 C#
df.reset_index(drop=True) #원래 쓰던 '지원번호' 인덱스 이름삭제
이름 학교 키 국어 영어 수학 과학 사회 SW특기
0 채치수 북산고 197 90 85 100 95 85 Python
1 정대만 북산고 184 40 35 50 55 25 Java
2 송태섭 북산고 168 80 75 70 80 75 Javascript
3 서태웅 북산고 187 40 60 70 75 80
4 강백호 북산고 188 15 20 10 35 10
5 변덕규 능남고 202 80 100 95 85 80 C
6 황태산 능남고 188 55 65 45 40 35 PYTHON
7 윤대협 능남고 190 100 85 90 95 95 C#
df #reset이 기존 데이터에 영향을 미치지 않음
이름 학교 키 국어 영어 수학 과학 사회 SW특기
지원번호
1번 채치수 북산고 197 90 85 100 95 85 Python
2번 정대만 북산고 184 40 35 50 55 25 Java
3번 송태섭 북산고 168 80 75 70 80 75 Javascript
4번 서태웅 북산고 187 40 60 70 75 80
5번 강백호 북산고 188 15 20 10 35 10
6번 변덕규 능남고 202 80 100 95 85 80 C
7번 황태산 능남고 188 55 65 45 40 35 PYTHON
8번 윤대협 능남고 190 100 85 90 95 95 C#
df.reset_index(drop=True, inplace=True) #실제 데이터 변경
df
이름 학교 키 국어 영어 수학 과학 사회 SW특기
0 채치수 북산고 197 90 85 100 95 85 Python
1 정대만 북산고 184 40 35 50 55 25 Java
2 송태섭 북산고 168 80 75 70 80 75 Javascript
3 서태웅 북산고 187 40 60 70 75 80
4 강백호 북산고 188 15 20 10 35 10
5 변덕규 능남고 202 80 100 95 85 80 C
6 황태산 능남고 188 55 65 45 40 35 PYTHON
7 윤대협 능남고 190 100 85 90 95 95 C#
Index 설정
지정한 column으로 Index 설정
df.set_index('이름') # 기존 데이터에 영향을 미치지 않음
학교 키 국어 영어 수학 과학 사회 SW특기
이름
채치수 북산고 197 90 85 100 95 85 Python
정대만 북산고 184 40 35 50 55 25 Java
송태섭 북산고 168 80 75 70 80 75 Javascript
서태웅 북산고 187 40 60 70 75 80
강백호 북산고 188 15 20 10 35 10
변덕규 능남고 202 80 100 95 85 80 C
황태산 능남고 188 55 65 45 40 35 PYTHON
윤대협 능남고 190 100 85 90 95 95 C#
df # set_index() 기본 값은 기존 데이터에 영향을 미치지 않음
이름 학교 키 국어 영어 수학 과학 사회 SW특기
0 채치수 북산고 197 90 85 100 95 85 Python
1 정대만 북산고 184 40 35 50 55 25 Java
2 송태섭 북산고 168 80 75 70 80 75 Javascript
3 서태웅 북산고 187 40 60 70 75 80
4 강백호 북산고 188 15 20 10 35 10
5 변덕규 능남고 202 80 100 95 85 80 C
6 황태산 능남고 188 55 65 45 40 35 PYTHON
7 윤대협 능남고 190 100 85 90 95 95 C#
df.set_index('이름', inplace=True) #inplace=True 값을 통해 기존 데이터 변경
df
학교 키 국어 영어 수학 과학 사회 SW특기
이름
채치수 북산고 197 90 85 100 95 85 Python
정대만 북산고 184 40 35 50 55 25 Java
송태섭 북산고 168 80 75 70 80 75 Javascript
서태웅 북산고 187 40 60 70 75 80
강백호 북산고 188 15 20 10 35 10
변덕규 능남고 202 80 100 95 85 80 C
황태산 능남고 188 55 65 45 40 35 PYTHON
윤대협 능남고 190 100 85 90 95 95 C#
Index 정렬
index를 기준으로 오름차순, 내림차순 정렬
df.sort_index() #인덱스를 기준으로 오름차순 정렬
학교 키 국어 영어 수학 과학 사회 SW특기
이름
강백호 북산고 188 15 20 10 35 10
변덕규 능남고 202 80 100 95 85 80 C
서태웅 북산고 187 40 60 70 75 80
송태섭 북산고 168 80 75 70 80 75 Javascript
윤대협 능남고 190 100 85 90 95 95 C#
정대만 북산고 184 40 35 50 55 25 Java
채치수 북산고 197 90 85 100 95 85 Python
황태산 능남고 188 55 65 45 40 35 PYTHON
df.sort_index(ascending=False) #인덱스를 기준으로 내림차순 정렬
df
학교 키 국어 영어 수학 과학 사회 SW특기
이름
채치수 북산고 197 90 85 100 95 85 Python
정대만 북산고 184 40 35 50 55 25 Java
송태섭 북산고 168 80 75 70 80 75 Javascript
서태웅 북산고 187 40 60 70 75 80
강백호 북산고 188 15 20 10 35 10
변덕규 능남고 202 80 100 95 85 80 C
황태산 능남고 188 55 65 45 40 35 PYTHON
윤대협 능남고 190 100 85 90 95 95 C#
반응형
'Python > pandas' 카테고리의 다른 글
데이터 분석 및 시각화 Pandas 데이터 분석 라이브러리 06. 데이터 선택 (기본) (0) | 2022.05.13 |
---|---|
데이터 분석 및 시각화 Pandas 데이터 분석 라이브러리 05. 데이터 확인 (0) | 2022.05.13 |
데이터 분석 및 시각화 Pandas 데이터 분석 라이브러리 04.파일저장 및 열기 (0) | 2022.05.13 |
데이터 분석 및 시각화 Pandas 데이터 분석 라이브러리 02.DataFrame (0) | 2022.05.12 |
데이터 분석 및 시각화 Pandas 데이터 분석 라이브러리 01.Series (0) | 2022.05.11 |