ICT COG Academy 4일차(2)

데이터 분석을 위한 모듈: pandas, numpy, matplotlib

 

pandas: 데이터 분석 모듈

numpy: 수치 해석 모듈

matplotlib: 시각화 모듈

 

사용하는 csv파일

 

모듈을 가져올때는 import를 사용한다.

import math
math.pi #출력: 3.15192...

모듈 안에 있는 특정한 기능만 가져오기

from math import cos
from math import pi

cos(360)  #출력 -0.283691...
pi #출력 3.14159...

모듈의 이름에 별명을 붙여서 사용 가능.

import math as m
m.pi #출력 3.141592....

 

pandas모듈 :numpy 모듈기반, 빠른 속도, 집계 및 시각화등도 수행 할 수 있다.

 

pandas모듈로 csv파일 가져오기.

import pandas as pd
import numpy as np

df_data=pd.read_csv("csv파일경로") #csv파일을 불러와서 데이터 프레임으로 만든다
df_data.head() #상위 5개의 행을 보여준다. 괄호에 숫자를 집어넣으면 나오는 행의 숫자를 변경 할 수 있다.

 

 

pandas의 데이터 프레임에서 열은 column이라 하고 행은 series라 한다. r에서의 데이터 프레임과는 문법이 살짝 다른것 같다.

df_data.columns # df_data의 컬럼 확인(변수 확인) 출력 Index(['기관명','소계','2013년도 이전'...],dtype='object')
df_data.columns[0] #첫번째 컬럼 확인 출력 '기관명'

 

컬럼명 변경

df_data.rename(
	columns={df_data.columns[0]:'구별'},
    inplace=True #inlpace는 원본 데이터 프레임을 지키느냐 마느냐를 설정. 원본이 필요 없이 바로 값을 변경하거나 넣으려면 True로 설정한다.
)

df_data.head()

엑셀파일 불러오기

df_excel_data=pd.read_excel(데이터 위치)
df_excel_data.head()

필요 부분만 불러오기

df_excel_data=pd.read_excel(
	'데이터 위치',
	header=2, #오프셋 2번째부터 데이터를 읽음. 3번행부터 읽는다.
    usecols='B,D,G,J,N' #엑셀 기준의 읽어올 컬럼을 가져온다.
)

df_excel_data.head()

컬럼 변경

df_excel_data.rename(
	columns={
    	df_excel_data.columns[0]:'구별',
        df_excel_data.columns[1]:'인구수',
        df_excel_data.columns[2]:'한국인',
        df_excel_data.columns[3]:'외국인',
        df_excel_data.columns[4]:'고령자'
    },inplace=True
)

df_excel_data.head()

Series: 데이터 프레임에서의 열, 시리즈가 모이면 데이터 프레임이 된다. 컬럼이 하나일시 데이터 프레임 == 시리즈

 

시리즈 생성

s=pd.Series([3,4,5,np.nan,6,7]) #np.nan null을 뜻한다.
s

#출력
0    3.0
1    4.0
2    5.0
3    NaN
4    6.0
5    7.0
dtype: float64

 

날짜 데이터 생성

dates=pd.date_range("20210302",periods=5) #20210302를 기준으로 4일치의 데이터를 생성
dates #출력 DatetimeIndex(['2021-03-02','2021-03-03','2021-03-04','2021-03-05','2021-03-06'], dtype='datetime64[ns]', freq='D')

위에서 생성한 날짜데이터를 index값으로 가지는 데이터 프레임 생성

random_data=np.random.rand(5,4) # "4개의 무작위 수를 가지고 있는 원소를 가진 리스트"를 5개 가진 리스트를 만든다.
# 출력 array([[0.50607914, 0.40829065, 0.24323962, 0.64477823],
#       [0.24182134, 0.92946455, 0.02877578, 0.56131603],
#       [0.19981136, 0.91667913, 0.10718897, 0.63984523],
#       [0.09377266, 0.03839559, 0.31200159, 0.19268145],
#       [0.53858987, 0.47988149, 0.60103634, 0.66091971]])

df=pd.DataFrame(
	random_data,	#데이터 프레임 안에 들어갈 데이터
    index=dates,	#인덱스 값 
    columns=["A","B","C","D"] #column값
)

 

'ICT COG Academy > AI 기본' 카테고리의 다른 글

ICT COG Academy 5일차(2)  (0) 2021.03.07
ICT COG Academy 5일차(1)  (0) 2021.03.06
ICT COG Academy 4일차(1)  (0) 2021.03.01
ICT COG Academy 3일차  (0) 2021.03.01
ICT COG Academy 2일차(2)  (0) 2021.02.23