멋쟁이사자처럼
[TIL] Day 23 - Downcast
23일차 downcast pd.to_numeric(df[], error, downcast) 를 통해서 타입을 변경하여 메모리를 줄일 수 있다. df.info 데이터가 차지하는 메모리 사용량을 보면 type이 크게 잡혀있어서 불필요한 메모리를 사용하는 경우가 많다. 따라서 min-max 에 맞게 적절한 타입을 정해주면 메모리 사용량을 줄일 수 있다. startswith(str) 문자열 함수를 이용하여 str로 시작하는지 아닌지 확인할 수 있다. pd.to_numeric() int -> unsinged float -> float bool -> int8 object -> category category 를 이용해서 폭이 넓게 줄일 수 있지만 범주형이 아닌 아예 문자열로 된 데이터라면 category 로 변경하..
[TIL] Day 18, 19, 20, 21, 22 - SQL, EDA, 통계
5일이나 밀려서 제목 터져나가는거 개웃기다 멋진 과거의 나 18일차 SQL OUTER JOIN LEFT JOIN RIGHT JOIN 보통 하나의 조인만을 많이 사용 INNER JOIN SELECT * FROM a INNTER JOIN b ON a.id = b.id SELF JOIN 자기자신에게 조인하는 것 특정 시간을 기준으로 더하거나, 빼기 DATE_ADD(기준날짜, INTERVAL) DATE_ADD(NOW(), INTERVAL 1 MINUTE) -> 1분 더하기 DATE_ADD(NOW(), INTERVAL -1 DAY) -> 하루 빼기 DATE_SUB(기준날짜, INTERVAL) UNION 좌우로 붙이는 것은 JOIN 이라고 하면, UNION은 상하로 붙이는 것 UNION을 통해서 중복을 제거할 수 ..
[TIL] Day 16, 17 - 시각화, 리팩토링
16일차 sns 에서 한글폰트 사용하기 plt.rc('font', family) plt.rc('axes', unicode_minus) 를 통해서 마이너스 설정 plt.style.use('ggplot') 을 이용해서 style 사용 import golb 라이브러리를 사용하여 폴더 내 데이터 확인 pd.concat([df1, df2]) df.duplicated() 을 이용하여 데이터 프레임 중복 확인하기 df.drop_duplicetes() 을 이용하여 중복 제거하기 df[].unique() 을 이용하여 고유값 개수 구하기 df.set_index(key) 을 이용하여 index 설정하기 df.sort_index() 을 이용하여 인덱스로 정렬 pd.to_datetime(df[]) 을 이용하여 날짜 데이터 뽑기..
[TIL] Day 15 - Plotly
15일차 plotly 인터렉티브 시각화 도구 plotly express plotly graph_objects conda install -c plotly plotly px.data 로 데이터 가져오기 px.line() title 로 제목 추가 px.box() notched = True 노치 모양 px.bar() px.histogram() px.scatter() px.scatter_matrix() px.area() px.violin() df.set_index('date') - 1 일별 수익률 df.columns.name 으로 name 지정 subplot 그리기 facet_col = name facet_col_wrap = n marginal 옵션을 이용 points='all' hover_data={'date'..
[TIL] Day 14 - EDA
14일차 res.json() key-value 쌍으로 이루어진 데이터는 pd.DataFrame() 으로 한번에 변환 가능 오늘 날짜 가져오기 import datetime from datetime datetime.strtime("%Y-%m-%d") %Y : 2022 %y : 22 %b : May csv 파일을 불러올 때, 앞에 0이 사라진다면 read_csv(data, dtype={"컬럼": np.object}) 경고 뜨는데 무시해도 됨. pd.concat(df1, df2, axis) pd.merge(df1, df2, left_on, right_on, how) on 에는 병합될 키 값을 넣는다. how 어떻게 조인될지 api 로 가져올 때 JS 탭 보기 query 넣어서 가져와야 함 api 는 xml, j..
[TIL] Day 12, 13 - 구글 시트, SQL 중급
12일차 구글시트로 Jupyter 포팅, EDA 구글 시트 URL 을 사용해서 jupyter notebook 에서 pd.read_csv 로 가져올 수 있다. index_col = 0 을 사용해서 인덱스 세팅 URL 패턴을 보고 함수로 만들어도 된다. 매운맛, 기름진맛, 단맛 데이터 사용 데이터를 가져오고 확인해야 할 3가지 정도 값의 범위가 0 ~ 1 사이인지 결측값은 없는지 데이터의 인덱스 값이 해당 데이터 모두 다 같은지 값의 범위 확인하는 함수 만약 최솟값과 최댓값이 (0, 1)이 아니라면 False df.min() axis = 0, 1 default 는 axis = 0 (행) 각 열마다의 min 값을 구하게 된다. df.max() df.min().min() 하게 되면 행과 열의 min 값을 구하게..