데이터분석/전처리

데이터프레임, 넘파이 함수정리

씩씩한 IT블로그 2021. 5. 4. 22:24
반응형

* 넘파이는 np, 판다스는 pd

import numpy as np
import pandas as pd

 

결측치

함수 설명 리턴값 비고
np.isnan(data) data값이 nana값이면 True를 반환 True or False sosoeasy.tistory.com/188
df.fillna({"col":df["col"].mean()}) "col"컬럼의 결측치를 평균으로 대체 df -
       
       
       
       
       
       
       

 

데이터변환 (data transformation)

함수 설명 리턴값 비고
array.shape 데이터의 모양을 확인 튜플형태로 sosoeasy.tistory.com/187?category=891523
array.reshape(n,m) 데이터 차원을 n,m으로 변환 있음 sosoeasy.tistory.com/187?category=891523
np.concatenate((A,B),axis=0 or 1) 데이터를 세로(axis=0) 혹은 가로(axis=1)로 붙이기 있음 sosoeasy.tistory.com/187?category=891523
       
       
       
       
       
       

 

인덱싱

- iloc(index로)

함수 설명 리턴값 비고
array[:,c] c열만 접근 있음 sosoeasy.tistory.com/187?category=891523
train_x.iloc[[1,2,3,4]] 데이터프레임에서 row 번호로 접근 데이터프레임 https://sosoeasy.tistory.com/477
df.iloc[:,:3] 3번 칼럼까지 반환 데이터프레임 https://sosoeasy.tistory.com/477
df.iloc[2:3,[4,6]] 연속된 값은 무괄호, 비연속된 값은 괄호 데이터프레임 -
       


- loc(label로)

함수 설명 리턴값 비고
array[:,c] c열만 접근 있음 sosoeasy.tistory.com/187?category=891523
df.loc[인덱스][컬럼명] loc로 인덱스, 컬럼명으로 접근 https://sosoeasy.tistory.com/477
df.loc[df["col"]=="x"] col 컬럼의 값이 x 인것 찾기 데이터프레임 https://sosoeasy.tistory.com/477
df.loc[:, [col for col in df.columns if col != "except_col"]] 특정 컬럼 제외하기 데이터프레임 sosoeasy.tistory.com/476
df.loc[i] 행단위 읽기 판다스 series  

 

파일 입출력

함수 설명 리턴값 비고
df.read_csv("file_name") 파일을 읽어와서 df형식으로 바꿈 df sosoeasy.tistory.com/184?category=891523
df.to_csv("file_name",mode="w") 파일 쓰기 없음 sosoeasy.tistory.com/184?category=891523
       
       
       
       
       
       
       

 

특성 추출

함수 설명 리턴값 비고
np.array.max() nparray에서 최댓값 추출 (2차원이상일때도 최댓값 반환) 최댓값  
       
       
       
       
       
       
       
       

 

데이터 프레임 관련 함수

함수 설명 리턴값 비고
df=pd.DataFrame(data=[[1,2],[3,4]], columns=["a","b"]) 새로운 데이터프레임 만들기 데이터프레임 sosoeasy.tistory.com/465
df=df.append({"column":value},ignore_index=True) 데이터 추가 데이터프레임 sosoeasy.tistory.com/466
       
df.columns 컬럼확인 판다스 index -
df.columns=["a","b"...] 컬럼 수정 or 초기화 - -
df.head(n), df.tail(n) 상위, 하위 n개 보기 데이터프레임 sosoeasy.tistory.com/467
df.dtypes 모든 컬럼 데이터타입 보기 판다스 series sosoeasy.tistory.com/468
df.info() 타입, 결측치 개수 확인 데이터프레임 sosoeasy.tistory.com/467
df.describe() 요약통계량 반환 데이터프레임 sosoeasy.tistory.com/467
newDf=pd.concat((df1,df2)) 데이터프레임 세로로 이어붙이기 (컬럼개수, 이름은 같아야함) 데이터프레임 sosoeasy.tistory.com/469
newDf=pd.concat([df1,df2],axis=1) 데이터프레임 가로로 이어붙이기
(row개수는 같아야함)
데이터프레임 sosoeasy.tistory.com/469
df['Survived'].value_counts() 특정 att에서 도매인별 개수를 카운트 판다스 series sosoeasy.tistory.com/470
df.isnull() 값이 결측치이면 true, 아니면 false 데이터프레임 sosoeasy.tistory.com/471
df.groupby(['a','b'])['a'].count() a를 기준으로 b의 개수를 셈 판다스 series sosoeasy.tistory.com/472
df.set_index('데이터프레임의 인덱스로 설정할 att의 이름', inplace=True) 데이터프레임의 index설정 - sosoeasy.tistory.com/473
df[["column1","column2"]] 특정 속성을 데이터프레임으로 보기 데이터프레임 sosoeasy.tistory.com/474
pd.get_dummies(df['column']) 더미데이터 만들기(원핫코딩) 데이터프레임 sosoeasy.tistory.com/475
df.sort_values(by="정렬기준이 될 변수 이름", ascending=True) #ascending:오름차순여부 정렬 데이터프레임 -
df.nunique() 컬럼별 유일한 값 개수 판다스 series https://sosoeasy.tistory.com/489
df["gender"].unique() 유일한 값 반환 넘파이 array https://sosoeasy.tistory.com/489
df[컬럼].apply(함수) 특정 컬럼에 함수를 적용해 주는 함수 판다스 series https://sosoeasy.tistory.com/559
df[(df[col]==3)
&(df[col]==4 | df[col]==6)
&(df[col]==5)]
조건에 맞게 추출
괄호로 묶어줘야 함
데이터프레임  
df.col.str.split(pat="문자",expand=True) col을 "문자"를 기준으로 split한 후 데이터프레임으로 반환 데이터프레임 https://sosoeasy.tistory.com/582

 

반응형