내가 기억할려고 쓰는 numpy, pandas 유용한 기능 정리
1) numpy
arange() : 순차적인 ndarray를 만들 때 사용할 수 있다.
사용법 : np.arange()
→ 굳이 for문 돌려가며 만들 필요 없다.
ex) np.arange(5)을 하면 [0, 1, 2, 3, 4]의 ndarray를 반환해준다. 파이썬의 range와 비슷하게 돌아간다.
argsort() : 정렬된 행렬의 인덱스를 반환해준다.
사용법 : np.argsort()
→ 정렬한 다음에 굳이 for문 돌려서 인덱스를 따로 저장할 필요가 없음.
(이것 때문에 머리 좀 아파봤다. 미리 알았으면 좋았을 기능 중에 하나!..)
불린 인덱싱 : 조건 필터링과 검색을 동시에 할 수 있는 기능
사용법 : ndarray의 [ ] 내에 True/False를 반환하도록 조건문만 기재하면 된다.
ex) array[array>0] , 그러면 0을 초과하는 array만 추출이 가능하다.
2) pandas
info() : 칼럼별로 데이터 개수, 타입, null 개수를 알려준다.
사용법 : df.info()
→ 굳이 list로 바꿔서 len하고, print해서 확인할 필요 없음, 처음 df 만들고 데이터 확인할 때 유용하다.
describe() : count와 평균값, 표준편차 등등을 알려주는 메소드이다. 대략적인 분포도를 알 수 있다. 마찬가지로 처음 데이터 확인할 때 참고할 만하다.
사용법 : df.describe()
value_counts() : 해당 칼럼 별로 개수를 알 수 있음.
사용법 : df['해당칼럼이름']l.value_counts()
→ 굳이 조건문 써가면서 셀 필요 없다. 마찬가지로 이거 몰라서 노가다 함.
values.tolist() : df를 리스트로 변환
사용법 : df.values.tolist()
→ np.array()로 바꿔서 list로 바꿨던 거 같은데 이런 방법도 있었다.
sort_values() : 해당 칼럼을 기준으로 df 정렬
사용법 : df.sort_values(by=['해당칼럼이름'])
isna() : NaN인 데이터에 대해 true를 반환한다.
사용법 : df.isna()
→ 보통 sum을 같이 사용해서 개수를 알 수 있다.
fillna() : NaN인 데이터를 다른 값으로 채워 넣는다.
사용법 : df.fillna('바꿀값', inplace=True)
apply() : lamda식을 적용할 수 있다. 코드를 깔끔하게 해 준다.
사용법 : df.apply(lamda ~)
ex) df.apply[lamda x : len(x))