전체보기
[TIL] Day 34 - ML, Loss Fuction, log
34일차 ML datetime.dt.year 로그를 취하는 이유 값이 너무 커지는 것을 막기 위해 그래프를 비교적 완만하게 만들어 정규분포의 형태에 가깝게 만들 수 있게 된다. 첨도와 왜도가 낮아진다. 로그에 취한 값을 다시 되돌리려면? -> e^(취한값) - 1 np.log1p np.expm1 kde 그래프 커널 밀도 그래프 커널 함수를 이용한 밀도 추정의 방법 밀도를 추정한다는 것은 확률밀도함수를 그려보겠다는 것 로그를 취해서 학습을 하고 나온 값은 다시 지수를 취해서 돌려놓는다. 코로나 데이터를 보면 월을 사용하지 않고, 연도-월을 이용 각 월마다의 추이는 같지만, 연도를 기준으로 해서 값이 배나 차이가 나기 떄문 월마다의 영향력이 있는게 아니라 연도가 더 쏀 느낌 (?) X_train, y_tra..
[TIL] Day 32, 33 - ML, RandomForest
32일차 ML 타이타닉 데이터 전처리 test, train 데이터 불러오기 pd.concat() 해서 전처리할수도, 근데 이때는 reset_index(drop) 파생변수 만들기 모델링할 때는 결측치 x, 범주형 x 따라서 One-Hot Encoding이 필요함 series.map() series.str display() 를 이용하면 연달아서 주피터 노트북에서 출력 가능 pd.get_dummies() 알아서 원핫인코딩 근데 그만큼 컬럼이 늘어난다. 이때, train과 test의 컬럼 개수 주의 (다르면 안된다.) np.nan == np.nan 하면 False 나옴 (?) pd.isnan(np.nan) 해야지 True 나옴 따라서 np.nan 인지 확인할 떄는 pd.isnan을 사용할 것 X_train, X..
[TIL] Day 31 - Tableau
31일차 Tableau Tableau Public 다운로드 필드명 != 원격필드명 데이터 원본 보기에서 데이터 수정 가능 숨기기 null 값 헤더 제거 필터 추가하기 타입 변경하기 데이터 해석기로 행병합 제거 wide to long (pivot table) 새 데이터 원본으로 데이터 새로 가져오기 필터를 이용해서 필터링 라이브 연결, 추출 연결 불연속형, 연속형 뷰, 마크 DATETRUCT(), DATEPART() 이중 축 FIRST(), LAST() FIXED{} 회고 태블로 정말 재미있는 또 하나의 세상이더만요 그러나.. 늘 그렇듯이 저장을 자주 해야합니다.. 오류 떠서 강제 종료되면 이때까지 하던 게 다 날아가더라구요 오늘 이 사실을 알게 되었어요 사실 알고싶진 않았어요 알게될 거라고 생각도 못했어..
[TIL] Day 30 - 테스트 자동화/주도개발
30일차 테스트 자동화 pytest pytest-watch _test 가 붙은 파일들의 test_ 가 붙은 함수들을 찾아 모두 호출 테스트 코드를 가지고 있으면 조금 더 과감하게 코딩을 할 수 있게 된다. __name__ __main__ 파일의 이름 actual, expected assert 데이터 프레임이 같은지 확인할 때는 df.eq(df2).all(axis=None) 테스트 주도개발 테스트를 할 때 텀을 타이트하게 잡는다. (코딩이 익숙하지 않을수록) 무작정 코딩을 하는 게 아니라 우선 테스트를 만들어 본다. 테스트는 보통 다른 곳에 여파가 갔는지 아닌지 확인하기 위해서 모든 테스트를 돌린다. 파일관리는 나란히 둘때도 패키지로 둘 때도 테스트를 만들어보면서 그에 맞는 모듈을 짜서 수행해본다. 조금씩..
Python deque의 rotate(), popleft() 기능
collection의 deque rotate() 우선 deque(덱)은 앞 뒤로 요소를 추가하고 삭제할 수 있는 자료구조 입니다. 큐를 양쪽으로 이어붙인 느낌이라고 생각하시면 됩니다. 약간 손에 앞뒤 이동만 가능한 카드패를 쥐고있다고 생각해보세요. python으로 deque을 공부하기가 좋습니다. 저는 deque의 연산 중에서 rotate(), popleft() 에 대해서 포스팅하고자 합니다. (잘 까먹어서..) from collections import deque 우선 deque을 collections 에서 가져옵니다. collections는 유용한 자료구조를 제공하는 python의 표준 라이브러리입니다. from collections import deque a = [1, 2, 3, 4, 5] prin..
[TIL] Day 29 - ML 교차검증, GridSearch, RandomSearch
29일차 ML 교차 검증 (Cross Validation) GridSearch RandomSearch 위 개념들 잘 알아두자.. MAE 평균 절대 오차 MAPE 평균 절대비 오차 MSE 평균 제곱 오차 RMSE 평균 제곱근 오차 항상 shape로 데이터 개수 확인하기 분류로는 수치형 데이터 모두를 예측할 수 있다. 타겟으로 예측할 수치형 컬럼을 선택한다. train 예측값이 채워져있는 df test 예측값이 비워져있는(or 무의미한) df .remove()는 None 반환 train, test 만들기 from sklearn.tree import DecisionTreeRegressor from sklearn.model_selection import cross_val_predict cv, n_jobs, ve..