본문 바로가기

카테고리 없음

Pandas 함수 정리

1. 판다스 이용 데이터 불러오기
import pandas as pd
df = pd.read_csv('asas.csv')

1-1. 인코딩(유니코드) 에러
encoding='utf-8' / encoding = 'cp949' 

1-2. 열을 인덱스로 지정하고 싶을 때
index_col = 0 / index_col = '열이름'  
불러오고 나서 set_index를 사용해 변경 가능

1-3. n개의 행만 불러오기
ex) 3개의 행만 불러오기 nrows = 3

1-4. 열이름지정
names = ['열이름1', '열이름2', ...]

1-5. 특정 열을 datetime 자료형으로 변환
parse_date=['열이름']
불러오고 나서 to_datetime를 사용해 변경 가능

2. 인덱싱

2-1. 명칭 기반 인덱스 연산자(행)
df.loc[]

2-2. 위치 기반 인덱스 연산자(열)
df.iloc[]

df.info() : 데이터의 건수, 데이터 타입, null 건수 확인 가능

df.sort_values() : 특정 열을 기준으로 데이터 정렬
by - 칼럼리스트 / inplace - 반환 여부(default = False) /
accending - 오름차순여부(내림차순 = False, default = Ture)

df.describe() : dataframe의 요약본(max, min, mean, 등등)

df.value_counts() : 열의 value 개수를 확인, accending 사용 가능,
dropna 를 False로 설정 하면 NA 값으로 행을 계산가능

isna(), isnull() : 데이터 값이 NaN이면 True 아니면 False
notna(), notnull() : 데이터 값이 NaN이면 False 아니면 True
.sum() 을 붙여 각 열의 결측지를 확인 할 수 있음

df.T (Transpose) : 컬럼과 인덱스의 위치를 바꿈

스칼라 값 가져오기
df.iat[2,2] - 인덱스
df.at[2,'컬럼1'] - 라벨

df.drop('컬럼1' , axis = 1) : axis 0은 행 / 1은 열

df.dropna() : NaN값이 하나라도 있으면 그 행 삭제 -> how = any(defalut)
how = all -> 행의 모든 값이 NaN인 행 삭제
df.fillna(0) : 결측지를 0으로 변환, df.fillna(df.mean())을 사용하면
평균값으로 대체

df['컬럼1'].unique() : 컬럼1 시리즈에 있는 값들은 1개씩만 보여준다

 

df.duplicated().sum() : 중복값 확인
df.drop_duplicates() : unique한 1개의 key만 남기고 나머지 중복값 처리