일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 티스토리
- 리눅스
- matplotlib
- 통계학
- 텐서플로
- 시각화
- 한빛미디어
- 월간결산
- Ga
- MATLAB
- 블로그
- 한빛미디어서평단
- Visualization
- Google Analytics
- Linux
- 서평단
- SQL
- Pandas
- 독후감
- 파이썬 시각화
- Python
- Tistory
- 서평
- 매틀랩
- 파이썬
- MySQL
- Blog
- tensorflow
- python visualization
- 딥러닝
- Today
- Total
목록Pandas (20)
pbj0812의 코딩 일기
0. 목표 - transform 을 사용한 데이터 변환 1. 실습 1) library 호출 import pandas as pd 2) 데이터 프레임 생성 df = pd.DataFrame({'a' : [1, 2, 3, 1, 2, 3], 'b' : [4, 5, 6, 4, 5, 7]}) 3) 모든 데이터에 1 씩 더하기 df2 = df.transform(lambda x : x + 1) 4) 데이터 프레임 옆에 groupby 결과를 넣고 싶을 때 (1) groupby 만 사용해보기 - groupby 결과가 index 별 숫자이기에 딸려 들어간 형태 - a 로 그룹화할 때 b의 합은 2 : 10, 3 : 12, 4 : 15 이기에 인덱스 찾아감 df2['c'] = df2.groupby(by = ['a'])['b']..
0. 목표 - pandas 로 UNION 구현하기 1. 실습 1) library 호출 import pandas as pd 2) 데이터 프레임 생성 a = pd.DataFrame({'a' : [1, 1, 2, 3, 4], 'b' : [1, 2, 3, 4, 5]}) b = pd.DataFrame({'a' : [1, 2, 3, 4, 5], 'b' : [1, 3, 5, 5, 9]}) 3) 데이터 프레임 결합 c = pd.concat([a, b]) 4) 중복 제거 - inplace 옵션을 통한 변수에 바로 저장 c.drop_duplicates(inplace = True) 5) index 초기화 - inplace 옵션을 통한 변수에 바로 저장 c.reset_index(drop = True, inplace = Tru..
0. 목표 - KNN 으로 편가르기 1. 실습 1) 데이터 생성 - 두 팀 생성 import numpy as np x = np.linspace(0, 5, 6) y = np.linspace(0, 100, 101) xx, yy = np.meshgrid(x, y) xxx = np.reshape(xx, (-1, )) yyy = np.reshape(yy, (-1, )) x2 = np.linspace(15, 20, 6) y2 = np.linspace(0, 100, 101) xx2, yy2 = np.meshgrid(x2, y2) xxx2 = np.reshape(xx2, (-1, )) yyy2 = np.reshape(yy2, (-1, )) 2) 데이터 프레임화 import pandas as pd df = pd.Data..
0. 목차 및 내용 1) Handling Missing Values - NULL 이 포함된 데이터에 대한 처리 - dropna() 를 통한 행 제외 - dropna(axis=1) 를 통한 열 제외 - fillna(0) 를 통한 처리 - fillna(method='bfill', axis=0).fillna(0) 를 통한 대체 2) Scaling and Normalization - Scaling 과 Normalization 의 차이(Scaling 은 값의 범위를 바꾸는 것?, 1달러와 1엔의 예를 들었을 때 1달러는 100엔의 가치가 있음. 이때, Scaling 을 하지 않으면 1엔의 차이와 1달러의 차이는 비슷해짐. Normalization 은 데이터 분포의 형태를 바꾸는 것?) - mlxtend.prepr..
0. 목차 및 내용 1) Creating, Reading and Writing - DataFrame 제작 방법(개인적으로는 dict 형태로만 썼었는데, 아래와 같이 쓸 수도 있음) fruit_sales = pd.DataFrame([[35, 21], [41, 34]], columns=['Apples', 'Bananas'], index=['2017 Sales', '2018 Sales']) - Series 에 관한 설명 - read_csv 를 통한 csv 파일 읽기 2) Indexing, Selecting & Assigning - iloc과 loc의 차이(iloc 은 stdlib indexing 기반 이기에 0:10 의 결과가 10개 나오지만 loc 은 11개가 나옴) - 해당 조건에 맞는 결과 추출 - 열 ..
0. 목표 - pivot, pivot_table 문서 따라하기 1. pivot 1) library 호출 import pandas as pd 2) 데이터 생성 df = pd.DataFrame({'foo': ['one', 'one', 'one', 'two', 'two', 'two'], 'bar': ['A', 'B', 'C', 'A', 'B', 'C'], 'baz': [1, 2, 3, 4, 5, 6], 'zoo': ['x', 'y', 'z', 'q', 'w', 't']}) 3) - foo 를 행기준으로 bar 를 열 기준으로 baz 를 채워넣기 df.pivot(index='foo', columns='bar', values='baz') 4) - 3) 과 동일한 결과 df.pivot(index='foo', col..
0. 묵표 - pandas melt 도큐먼트 따라하기 1. 실습 1) library 호출 import pandas as pd 2) 데이터 생성 df = pd.DataFrame({'A' : ['a', 'b', 'c'], 'B' : [1, 2, 3], 'C' : [4, 5, 6]}) 3) melt 예제 따라하기 (1) pd.melt(df, id_vars=['A'], value_vars=['B']) (2) pd.melt(df, id_vars=['A'], value_vars=['C']) (3) pd.melt(df, id_vars=['A'], value_vars=['B', 'C']) (4) 필드명 변경 pd.melt(df, id_vars = ['A'], value_vars = ['B'], var_name = 'v..
0. 플로우 차트 - 쿼리가 작성된 txt 를 읽어 해당 쿼리를 이용해 MySQL 에서 데이터를 가져온 뒤 pandas 의 DataFrame 형태로 출력 1. 텍스트 파일 내용 SELECT * FROM pbj_db.rownum_test; 2. 실습 1) library 호출 import pymysql import pandas as pd 2) db 연결 db = pymysql.connect(host='127.0.0.1', port=3306, user='root', db='pbj_db', charset='utf8', cursorclass=pymysql.cursors.DictCursor) cursor = db.cursor() 3) 파일 읽기 f = open("./sql.txt", 'r') sql = '' whi..
0. 목표 - Python 의 Pandas 를 이용하여 SQL 스럽게 데이터 전처리 하기 1. 실습 1) SELECT (1) 필드 하나 df = pd.DataFrame({'a' : [1, 2, 3, 4, 1], 'b' : [2, 3, 4, 5, 6], 'c' : [2, 4, 6, 8, 6]}) df['a'] (2) 필드 여러개 df[['a', 'b']] (3) 행 인덱스로 접근 df.loc[0] 2) WHERE - a 가 3 이상 df[df['a'] >= 3] - a 가 3 이상이고 b 가 5 미만 a = ((df['a'] >= 3) & (df['b'] < 5)) df.loc[a] 3) CASE def case(x): if x < 2: return '2 미만' elif x < 4: return '4 미만..