본문 바로가기

Data Analysis

(5)
Data Analysis / pandas / DataFrame(4) # Database의 Table join 기능 # DataFrame 두개를 연결시켜서 새로운 DataFrame을 만들어보자 import numpy as np import pandas as pd data1 = {'학번' : [1,2,3,4], '이름' : ['홍길동', '박동훈', '이순신', '강감찬'], '학년' : [2,4,1,3]} data2 = {'학번' : [1,2,4,5], '학과' : ['CS', 'MATH', 'MATH', 'CS'], '학점' : [3.4, 2.9, 4.5, 1.2]} df1 = pd.DataFrame(data1) df2 = pd.DataFrame(data2) # merge() 함수를 사용해서 결합 수행 # 옵션 # on : ..
Data Analysis / pandas / DataFrame(3) 1. loc[ ]를 이용한 추출 import numpy as np import pandas as pd data = {'이름':['이순신', '홍길동', '강감찬', '김유신', '장보고'], '학과':['컴퓨터', '기계', '철학', '컴퓨터', '국어국문'], '학년':[1,2,2,4,3], '학점':[1.5, 2.0, 3.1, 1.1, 2.7]} df = pd.DataFrame(data, columns=['학과','이름','학점','학년','등급'], index=['one','two','three','four','five']) # 행 추출 display(df.loc['one':'three']) # 행과 열을 동시에 추출할 수도 있다. # display(df.loc[..
Data Analysis / pandas / DataFrame(2) Databse 안의 Table을 사용하는 방법은 크게 두 가지이다. 1. Django에서 사용하는 ORM 방식 (Model을 이용해서 Tablel을 사용) => 장점 : SQL이라고 불리는 Database 언어를 몰라도 Table 사용이 가능하다. 2. 일반적으로는 SQL 구문을 이용해서 Database 안의 Table을 사용 => SQL 구문을 알아야 table에서 내가 원하는 데이터를 추출할 수 있다. # 저번에 만들었던 Database의 table을 활용해보자 import pymysql.cursors import pandas as pd # 데이터베이스에 연결 conn = pymysql.connect(host='localhost', user='da..
Data Analysis / Pandas / DataFrame(1) # pandas DataFrame은 python의 dictionary를 가지고 만든다. # dictionary로 DataFrame을 생성할 때 데이터의 개수가 맞지 않으면 error # dictionary의 key가 DataFrame의 column으로 들어가게 된다. # DataFrame은 Series의 집합 (각 column이 Series) import numpy as np import pandas as pd # dictionary data = {'names' : ['아이유', '김연아', '홍길동', '강감찬', '이순신'], 'year' : [2015, 2019, 2020, 2013, 2017], 'points' : [3.5, 1.5, 2.0, 3.4, 4.0] } # Da..
Data Analysis / Pandas / Series # Pandas는 ndarray(NumPy)를 기본 자료구조로 이용 # ndarray를 가지고 Pandas는 두 개의 또 다른 자료구조를 이용 # => Series, DataFrame # Series : 동일한 데이터 타입의 여러개의 성분으로 구성되는 자료구조 (1차원) # DataFrame : 데이터베이스에서 Table과 같은 개념 (2차원) # Series로 구성되어 있음 (하나의 Series가 열로 들어감) # pandas를 먼저 설치해야 한다. # conda install pandas import numpy as np import pandas as pd # ndarray arr = np.array([-1,4,5,99], dtype=np.float64) # Series => nd..