.loc과 .iloc
.loc
인덱스 레이블로 행을 조회, 메소드가 아닌 속성.
주로 레이블을 기반으로 행과 열에 접근하는 데 사용되지만, boolean 배열과 함께 사용 가능
.iloc
인덱스 포지션을 사용하여 단일 행 또는 여러 행을 선택
index는 문자, 숫자 다 가능.
되도록 index labe 숫자는 피해야함
Broadingcasting
크기나 모양이 다를 때 처리 방식을 정하는 것
numpy에선 Array, pandas에선 DataFrame 또는 Series의 모양이 다른 경우에 연산이 가능하도록 모양을 처리하는 방법
numpy와 pandas의 Broadcasting의 진행 방식은 다름.
numpy의 broadcasting 방법
부족한 차원을 확장시켜서 진행
0 2.0
1 NaN
2 NaN
dtype: float64
array([2., 4., 6.])
numpy는 Stretch 방식이고
pandas는 각각 처리하고 반영이 어려운 곳은 결측치(NA)로 처리하는 방식
행렬 크기가 다를 때
s1에는 d, s3에서는 c, s2에서는 다 들어있음
a | 1.0 | 4 | 8.0 |
b | 2.0 | 5 | 9.0 |
c | 3.0 | 6 | NaN |
d | NaN | 7 | 10.0 |
a | 4 |
b | 5 |
c | 6 |
d | 7 |
a | NaN | 0 | NaN |
b | NaN | 0 | NaN |
c | NaN | 0 | NaN |
d | NaN | 0 | NaN |
a 4
b 5
c 6
d 7
Name: 2열, dtype: int64
a 4
b 5
c 6
d 7
Name: 2열, dtype: int64
NaN | NaN | NaN | NaN | NaN | NaN | NaN |
NaN | NaN | NaN | NaN | NaN | NaN | NaN |
NaN | NaN | NaN | NaN | NaN | NaN | NaN |
NaN | NaN | NaN | NaN | NaN | NaN | NaN |
Conditional Statement
파이썬이라면 True/False 기반으로 실행제어 if, else, matchcase..
SQL문이라면 조건에 맞는 데이터를 탐색 WHERE 절
Pandas에서는 True/False 로 만들어진 Series/DataFrame 으로 조건에 맞는 데이터를 탐색
ISIN과 ISNULL
Series.isin(value)
시리즈의 메서드로 각 요소가 특정 값들에 속하는지 확인, Boolean Series 반환values 집합이나 리스트 형태의 값들로 이루어진 시퀀스
.isnull()
null 요소가 있는지 확인하는 메서드
NA를 발견하면 True 반환
.notnull()
isnull과 반대로 NA가 아닌 걸 발견하면 True 반환