Ch6 ~7 데이터 로딩, 정제 및 준비

Ch6. 데이터 로딩과 저장, 파일 형식

데이터 읽기 read 함수 사용. 아래와 같은 옵션을 취할 수 있다. -색인 : DataFrame에서 하나 이상의 컬럼을 색인으로 지정 가능. -자료형

추론과 데이터 변환 -날짜 분석 -반복 -정제되지 않은 데이터 처리

계층적 색인을 지정하고 싶담녀 컬럼 번호나 이름의 리스트를 넘기면 된다 csv를 불러올 때 sep=',' 를 사용하여 , 를 구분자로 구분할 수 있다 read_pickle : 피클 포맷으로 저장된 객체를 읽어온다 pickle은 하나의 모듈로, 텍스트가 아닌 자료형(리스트, 클래스)은 일반적인 파일 입출력 방법으로 데이터를 저장하거나 불러올 수 없다. 이 문제를 해결할 때 사용하는 형식으로, 파이썬의 모든 자료들을 저장/읽을 수 있다. 오래 보관할 필요가 없는 데이터일 경우에만 추천. 장기간 보관된다는 보장이 없음 pickle 로 데이터를 저장하거나 불러올 때 파일을 바이트 형식으로 읽거나 써야한다(wb/rb) pickle.load(파일)을 통해서 파일 내용을 읽어오려면 pickle.dump 를 사용해서 데이터를 입력한 파일어야한다.

Ch7. 데이터 정제 및 준비

누락된 데이터 골라내기 null 인 데이터는 추출하지 않는 함수 : dropna() , notnull () (두 함수 결과 똑같다) 만일 null이 하나라도 포함하고 있는 로우가 있으면 제외 how= 'all' 옵션을 넘기면 모두 NA값인 로우만 제외. NaN이 몇개 이상 값이 들어 있는 로우만 제하려면 tresh 인자에 기준 입력 (ex) tresh =2) (실습했을때는 오류가 나서 책에 있는것을 가져왔다)

from numpy import nan as NA
data=pd.Series ([1, 6, 3] , [1, NA, NA], [NA, NA, NA] , [NA, 6, 3] )
cleaned = data.dropna()

data 
>> 0    	1    	2
0  1	    6    	3
1  1    	NaN	  NaN
2  NaN  	NaN	  NaN
3  NaN 	  6   	3 


cleaned 
>> 0	 1	 2
0  1	 6   3

data.dropna(how='all')
>>  0    	1    	2
0   1	    6    	3
1   1	    NaN   NaN
3   NaN   6    	3

결측치 채우기 fillna () : 넣고 싶은 값을 넘겨주면 된다. 사전값을 넘겨서 각 컬럼마다 다른 값을 채울 수 있다 data.fillna({1:0.5, 2:0} ) (1 칼럼에는 null 값에 0.5, 2칼람에는 0이 채워진다) 재색인에서 빈 공간에 null을 넣을수도 있다.

매핑 map () 사용해서 DataFrame의 컬럼이나 Series, 배열 내의 값을 기반으로 데이터 매핑할 수 있다 map 매서드는 딕셔너리 자료형태 사용 ! mapping 할 때 DataFrame에는 map 매서드가 적용되지 않으므로, Series로 바꿔주는 작업을 꼭! 해야한다

개별화와 양자화 분석을 위해 그룹별로 나누기. 라벨링 할수도 있다

repalce ( [치환될 값], [치한할 값]) : 치환될 값이 여러개면 치한될 값을 여러개 적어도 된다. 리스트 대신 사전 이용해도 된다

문자열 객체 메서드 : split, strip , join, in, count 등 파이썬 기본 문법을 응용할 수 있다

정규표현식 : 텍스트에서 문자열 패턴을 찾는 유연한 방법을 제공 regex (단일 표현식) - 정규 표현 언어로 구성된 문자열 re 모듈 함수는 패턴 매칭, 치환, 분리 세가지로 나눌 수 있다

Last updated