데이터 분석/Python - pandas

[이론] 데이터타입 확인, []연산 데이터 인덱싱

toraa 2025. 1. 9. 13:32

데이터타입 확인하기

colum안의 데이터들은 타입이 동일해야 함 → column의 데이터타입 확인 필요
 
연속형(시퀀스형)
- float64 : 실수
- int64 : 정수
- datetime64[ns] :; 날짜시간 (python datetime)
 
비연속형
- bool : true or false
- category : 범주형
- object : 문자열 or 그 외 

 
보통은 크게 숫자형/범주형 으로 나눠서 접근함
분석면에서 수치형(정수,실수) 범주형(범주형,문자열), 날짜형으로 구분하는것이 중요
 
 
변수 형식 확인하기

df_gp.dtypes

팀           object
포지션         object
월즈우승         int64
lck우승        int64
나이           int64
데뷔년도         int64
리그경기수        int64
리그승률       float64
리그KDA      float64
서머승률       float64
서머KDA      float64
리그킬관여율     float64
서머킬관여율     float64
반려동물 유무    float64
dtype: object

[ ]연산 데이터 인덱싱

1. 컬럼명 활용
기본적으로 [컬럼 이름]을 넣어 인덱싱
 
.columns 를 통해 칼럼 이름 확인

Index(['팀', '포지션', '월즈우승', 'lck우승', '나이', '데뷔년도', '리그경기수', '리그승률', '리그KDA',
       '서머승률', '서머KDA', '리그킬관여율', '서머킬관여율', '반려동물 유무'],
      dtype='object')

 
[ ]연산으로 하나의 컬럼 가져오기

df_gp['팀']

이름
Faker           T1
Zeus            T1
Oner            T1
Gumayusi        T1
Keria           T1
Kiin         Gen.G
Canyon       Gen.G
Chovy        Gen.G
Peyz         Gen.G
Lehends      Gen.G
Doran          HLE
Peanut         HLE
Zeka           HLE
Viper          HLE
Delight        HLE
Kingen          DK
Lucid           DK
ShowMaker       DK
Aiming          DK
Kellin          DK
PerfecT         KT
Pyosik          KT
Bdd             KT
Deft            KT
BeryL           KT
Name: 팀, dtype: object

▶ 출력형태가 pandas의 series 형태 : 인덱스  값(데이터)
 
[리스트]: 복수 컬럼 가져오기

df_gm[['팀','데뷔년도']]

▶ 대괄호두개가 아니라, 인덱싱 안에 리스트가 들어간 형태라고 생각하기
▶ 복수의 컬럼은 결과가 dataframe형태
 
 
2. loc과 iloc을 활용한 기본 인덱싱
원하는 관측치, 즉 특정 행에 접근
df.loc[ ] : 함수가 아니기때문에 ()가 아닌 [] 사용
축의 순서대로 원하는 데이터 찾아옴 (관측치부터 접근)
 
인덱스 확인

df_gm.index

 
단일 인덱스 선택

df_gm.loc['Faker']

팀            T1
포지션          미드
월즈우승          5
lck우승        10
나이           28
데뷔년도       2013
리그경기수      1008
리그승률       66.6
리그KDA       4.2
서머승률       56.8
서머KDA       3.8
리그킬관여율     65.6
서머킬관여율     59.5
반려동물 유무     NaN
Name: Faker, dtype: object

 
리스트 활용한 복수의 인덱스 선택

df_gm.loc[['Faker','Deft']]

 
loc는 축의 순서대로 접근하는 인덱싱 방식
→ loc[ [리스트] ]와 loc[인덱스, 컬럼] 구분해야 함
 
loc[ ]는 2번축(컬럼)을 추가하여 선택 가능

df_gm.loc['Faker','데뷔년도']

np.int64(2013)
df_gm.loc[['Faker','Deft'],['포지션','데뷔년도']]

 


iloc[]을 활용하여 정수 순서로 표현되는 row선택
 
단일 인덱스 순서 선택

df_gm.iloc[0]

팀            T1
포지션          미드
월즈우승          5
lck우승        10
나이           28
데뷔년도       2013
리그경기수      1008
리그승률       66.6
리그KDA       4.2
서머승률       56.8
서머KDA       3.8
리그킬관여율     65.6
서머킬관여율     59.5
반려동물 유무     NaN
Name: Faker, dtype: object

 
슬라이싱 가능

df_gm.iloc[0:3]

 
컬럼 순서 추가 선택

df_gm.iloc[2:5, 1:3]