일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Linux
- Blog
- SQL
- 매틀랩
- 서평
- 한빛미디어
- 시각화
- Tistory
- Google Analytics
- 독후감
- tensorflow
- 파이썬
- 월간결산
- Visualization
- 서평단
- Ga
- 딥러닝
- MATLAB
- 티스토리
- Python
- 텐서플로
- 리눅스
- MySQL
- python visualization
- 한빛미디어서평단
- Pandas
- 블로그
- 파이썬 시각화
- 통계학
- matplotlib
- Today
- Total
목록Pandas (20)
pbj0812의 코딩 일기
0. 목표 - barh 그래프에서 특정 bar만 다른 색으로 칠하기 1. 실습 1) library 호출 import pandas as pd import matplotlib.pyplot as plt 2) 데이터 생성 df = pd.DataFrame({'catn' : ['a', 'b', 'c', 'd', 'e'], '2020' : [1, 2, 3, 4, 5], '2021' : [5, 4, 3, 2, 1], '2022' : [3, 5, 1, 5, 2]}) df_copy = df.copy() 3) 그림 제작에 사용될 필드명 저장 column_list = df_copy.columns[1:] 4) 그림 그리기 # 판 깔기 fig, ax = plt.subplots(len(column_list), 1) # 피규어 크기..
0. 도서 정보 - 도서명 : Pandas로 하는 데이터 과학 - 저자 : 마이클 헤이트 - 링크 1. 후기 - 책의 발행년도는 2018년으로 조금 기간이 지난 책이지만(그래서 pandas 최신 버전에 대한 내용이나 사장될 내용을 따라 잡지는 못하지만...) 파이썬을 통한 데이터 핸들링을 하기에는 좋은 책이다. 하지만 데이터 과학... 이라는 제목은 해당 도서와는 조금 멀게 느껴진다. 해당 도서에서는 기초적인 데이터 생성(파일 읽기, 데이터 프레임 만들기)에서 부터 시작하여 인덱스를 이용한 데이터 추출, 데이터 핸들링(결측값 처리, 그룹화, 롤링 윈도우 등), 기술 통계(평균, 최빈수, 분산, 분위수 등), 시각화(matplotlib 을 이용한 차트 생성) 를 다룬다. 그렇기에 만약, 머신러닝, 딥러닝 ..
0. 목표 - 인덱싱, 슬라이싱, iloc, loc, iat, at 정리 1. 리스트 1) 리스트 생성 a = [i for i in range(10)] - 결과 : [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] 2) 인덱싱 a[1] - 결과 : 1 a[-1] - 결과 : 9 3) 슬라이싱 a[1:3] - 결과 : [1, 2] a[-3:-1] - 결과 : [7, 8] a[::2] - 결과 : [0, 2, 4, 6, 8] a[1::2] - 결과 : [1, 3, 5, 7, 9] a[::-1] - 결과 : [9, 8, 7, 6, 5, 4, 3, 2, 1, 0] a[::-2] - 결과 : [9, 7, 5, 3, 1] a[-2:1:-2] - 결과 : [8, 6, 4, 2] 2. 시리즈 1) 라이브러리 호출..
0. 목표 - GridSpec 을 이용한 여러 그래프를 같이 그리기 1. 실습 1) library 호출 import seaborn as sns import matplotlib.pyplot as plt from matplotlib import gridspec 2) 데이터 생성 flights_long = sns.load_dataset("flights") 3) heatmap 용 데이터 flights = flights_long.pivot("month", "year", "passengers") 4) barplot 용 데이터 year_df = flights_long.groupby(by = 'year').agg({'passengers' : 'sum'}) month_df = flights_long.groupby(by ..
0. 목표 - add_patch 를 이용한 violinplot 구현하기 1. seaborn 의 violinplot import seaborn as sns tips = sns.load_dataset("tips") sns.violinplot(y="total_bill", data=tips) 2. 구현하기 1) library 호출 import matplotlib.pyplot as plt import pandas as pd import matplotlib.patches as patches 2) 구간 확보 - [0, 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55] bins = list(range(0, 60, 5)) 3) 구간 적용 tips['level'] = pd.cut(tips['to..
0. 목표 - relativedelta 를 활용한 date_add 구현 1. 실습하기 1) library 호출 import pandas as pd from dateutil.relativedelta import relativedelta 2) 데이터 프레임 생성 df = pd.DataFrame({'id' : [1, 2, 3, 4, 5], 'date' : ['2021-01-01 11:11:11', '2021-02-01 11:11:11', '2021-01-03 11:11:11', '2021-04-10 11:11:11', '2021-05-01 11:11:11']}) 3) 데이터 형식 변경 df['date'] = pd.to_datetime(df['date'], format="%Y-%m-%d %H:%M:%S") 4)..
0. 목표 - query 함수 사용하기 1. 실습하기 1) library 호출 import pandas as pd 2) dataframe 생성 df = pd.DataFrame({'A' : [1, 2, 3, 4, 5], 'B' : ['apple', 'banana', 'apple', 'berry', 'watermelon']}) 3) query 사용하기 (1) where A > 3 df.query('A > 3') (2) where A > 3 and A 3 and A < 5') (3) where A = 1 or A = 4 df.query('A == 1 or A == 4') (4) where A in (1, 3, 5) df.query("A in (1, 3, 5)") (5) wher..
0. 목표 - isin 으로 SQL in 구현 1. 실습하기 1) library 호출 import pandas as pd 2) 테이블 생성 df = pd.DataFrame({'A' : [1, 2, 3, 4, 5], 'B' : ['apple', 'banana', 'apple', 'berry', 'watermelon']}) 3) isin 으로 in 구현 df[df.B.isin([1, 'apple'])] 4) isin 으로 not in 구현 df[~df.B.isin([1, 'apple'])] 2. 참고 - How to filter Pandas dataframe using 'in' and 'not in' like in SQL
0. 목표 - lambda 와 정규표현식을 이용한 SQL like 구현 1. 실습 1) library 호출 import pandas as pd import re 2) 데이터 프레임 생성 df = pd.DataFrame({'a' : [1, 2, 3, 4, 5], 'b' : ['hello', 'ahello', 'hellob', 'hel', '123']}) 3) 함수 생성 - 정규식을 이용하여 결과가 re.Match 이면 True 반환 아니면 False 반환 def function(x, inp): p = re.compile(inp) m = p.search(x) return type(m) == re.Match 4) %hello% df['TrueOrFalse'] = df.apply(lambda x : functi..
0. 목표 - pandas 를 이용한 데이트 포맷 변경 1. 실습 1) library 호출 import pandas as pd 2) 데이터프레임 생성 df = pd.DataFrame({'id' : [1, 2, 3, 4, 5], 'date' : ['2021-01-01 11:11:11', '2021-02-01 11:11:11', '2021-01-03 11:11:11', '2021-04-10 11:11:11', '2021-05-01 11:11:11']}) 3) 데이터 타입 확인 df.dtypes 4) datetime 형식으로 변경 df['date2'] = pd.to_datetime(df['date'], infer_datetime_format=True) 5) 타입 확인 df.dtypes 6) YYYY-MM-DD..