pandas와 numpy 다루기
2018. 5. 11. 02:33ㆍPython-이론/python-인공지능
pandas와 numpy 다루기
머신러닝을 할 때 데이터를 자주 조작하며 사용하게 될 것이다. 데이터를 조작하는데 유용한 pandas와 numpy의 함수에 대해 알아보자
pd.DataFrame(inputData)
DataFrame은 numpy의 ndarray, dict, 일반 배열들을 입력데이터로 받는다.
import pandas as pd data = [ [1,2,3,4], [5,6,7,8], [9,10,11,12], [13,14,15,16] ] r = pd.DataFrame(data) print(r)
결과
결과와 같이 입력데이터 뿐만 아니라 왼쪽과 윗편에 인덱스까지 붙어서 나온다.
pd.Series(inputData,dtype=)
Series의 입력값은 1차원 배열 딕셔너리를 받는다. 그리고 뒤에는 데이터 타입형을 지정해줘도 되고 안해도 된다.
import pandas as pd data= ["Avengers","gurdians of the galaxy","agent of shiled"] r = pd.Series(data)
원하는 데이터 추출하기
이번에는 데이터의 키값으로 접근하여 원하는 데이터 값을 가져와 보겠다.
import pandas as pd data = { "weight":[80.0,70.4,65.5,45.9,51.2], "height":[170,180,155,143,154], "type":["f","n","n","t","t"] } data = pd.DataFrame(data) #이 키값에 모든 값 출력 print(data["weight"]) print(data[["weight","height"]]) print(data[2:4]) print(data[2:]) #조건을 추가하여 출력하기 print(data[data.height>=160])
pd.sort_value(data,ascending=)
import pandas as pd data = { "weight":[80.0,70.4,65.5,45.9,51.2], "height":[170,180,155,143,154], "type":["f","n","n","t","t"] } data = pd.DataFrame(data) print(data.sort_value(by="height")) print(data.sort_value(by="weight",ascending=False))
행과 열을 반전 시켜보기
data = [ ["A","B","C"], ["D","E","F"], ["G","H","I"] ] data = pd.DataFrame(data) print(data) print("\n\n\n") print(data.T)
numpy를 통해 데이터 조작
import numpy as np #0으로 초기화 된 np배열 만들기 zeros = np.reros(10,dtype = np.float32) print(zeros) #0~9까지 arrange = np.arrange(10,dtype=np.float32) print(arrange) #모든 값에 3곱하기 arrange *=3 #평균 print(arrange.mean())
결과
numpy를 이용한 정규화
지금 까지는 데이터를 키는 200, 몸무게는 100으로 나누어서 정규화 시켰다. 하지만 지금 부터는 numpy를 이용하여 새로운 방법으로 정규화를 시켜보도록 하겠다.
import pandas as pd import numpy as np data = { "weight":[80.0,70.4,65.5,45.9,51.2], "height":[170,180,155,143,154], "type":["f","n","n","t","t"] } v = pd.DataFrame(data) def norm(v,key): c = v[key] v_min = c.min() v_max = c.max() print("key=> ",key,"min",v_min,"max",v_max) v[key] = (c-v_min)/(v_max-v_min) norm(v,'weight') norm(v,'height') print(v)
'Python-이론 > python-인공지능' 카테고리의 다른 글
word2vec 사용해서 한 단어와 연관된 단어들 찾아보기 (0) | 2018.05.17 |
---|---|
한국어 분석(형태소 분석) (0) | 2018.05.17 |
Tensorboard 사용해보기 (0) | 2018.05.08 |
텐서플로우로 머신러닝 하기(bmi 구하기) (0) | 2018.05.08 |
데이터 검증하기-cross-validation, grid-search (0) | 2018.04.25 |