Loading...
2021. 9. 23. 18:12

파이썬 데이터 분석 실무 테크닉 100 -최적화(3)

테크닉 051~060을 통해 최적의 물류 계획을 세우기 위한 흐름을 배워보았다. 만약 "당신이 가지고 있는 데이터 분석 기술을 이용해서 우리 회사의 경영 현황을 계산해주세요"라는 의뢰를 받으면 그 업무를 어떻게 수행할까? 이 장에서는 몇 개의 라이브러리를 이용해 최적화 계산을 진행할 것이다. 고객 요청 회사의 제조에서 물류까지의 전체 흐름 중 어디에 비용 개선 가능성이 있는지 분석해 주셨으면 합니다. 전제조건 : 대리점(P, Q)가 있고 판매되는 상품군(제품 A, B)에는 일정 수요가 예측되어 있어, 이 수요량을 근거로 공장(공장 X, Y)에서의 생산량을 결정한다. 각 공장에서 대리점으로까지의 운송비, 재고 비용들을 고려해서 결정 테크닉 061 : 운송 최적화 문제를 풀어보자 운송 최적화 문제를 풀어볼 ..

2021. 9. 14. 21:37

파이썬 데이터 분석 실무 테크닉 100 -최적화(2)

테크닉 056 : 운송 경로 정보를 불러오자 이번 글에는 본격적으로 물류 데이터를 이용해 최적화를 진행해 볼 것이다. # 데이터 불러오기 df_tr = pd.read_csv('data/6장/trans_route.csv', index_col = '공장') df_tr.head() 결과를 보면 어느 창고에서 어느 공장으로의 물류가 많은지는 알 수 있다. 그러면 네트워크 가시화를 이용해 운송 경로를 가시화해 보자. df_pos = pd.read_csv('data/6장/trans_route_pos.csv') # 객체 생성 G = nx.Graph() # 노드 설정 for i in range(len(df_pos.columns)): G.add_node(df_pos.columns[i]) # 엣지 설정 및 가중치 리스트화..

2021. 9. 13. 20:13

파이썬 데이터 분석 실무 테크닉 100 -최적화(1)

3부 최적화 6장 물류의 최적경로를 컨설팅하는 테크닉 10 분석 목표 : 물류의 기초가 되는 '운송 최적화'를 검토하고 기초적인 테크닉 배우기 전제조건 각 창고와 공장 구간의 운송 비용은 과거 데이터에서 정략적으로 계산돼 있음 집계 기간은 2019년 1월 1일 ~ 2019년 12월 31일 북부지사와 남부지사의 데이처를 시스템에서 추출 테크닉 051 : 물류 데이터를 불러오자 import pandas as pd # 공장데이터 factories = pd.read_csv('data/6장/tbl_factory.csv', index_col = 0) factories # 창고데이터 warehouse = pd.read_csv('data/6장/tbl_warehouse.csv', index_col = 0) warehou..

2021. 9. 10. 19:35

[자전거 수요 예측] - 1

Edwith 강의를 통해 [캐글 실습으로 배우는 데이터 사이언스] 강의를 들었다. 교육 과정에 자전거 수요 예측 강의를 듣고 캐글 실습을 시작하게 되었다. 기초로 진행하기엔 좋은 데이터 분석이라 생각하여 직접 캐글로 진행해보았다. 데이터셋은 아래의 링크에 있다. https://www.kaggle.com/c/bike-sharing-demand Bike Sharing Demand | Kaggle www.kaggle.com 1. 모듈 불러오기 import pandas as pd import numpy as np import matplotlib.pyplot as plt import seaborn as sns from scipy import stats import matplotlib as mpl %matplotl..

2021. 9. 9. 19:07

[타이타닉 생존자 분류] - 2

저번 시간에 타이타닉 데이터셋으로 EDA까지 진행해보았다. 오늘은 로지스틱 회귀 모델을 이용해 생존자 분류 모델을 만들어보고 성능을 평가해 볼 것이다. 분류 : 생존자 분류 모델 만들기 분류 모델을 위해 전처리하기 학습 데이터셋을 만들기 위해 전처리를 진행할 것이다. 먼저, age와 embark 피처의 결측치를 채워야 한다. age의 결측치는 평균값, embark의 결측치는 최빈값으로 대체할 것이다. 그리고 각 피처의 계산할 수 없는 값들을 처리하기 위해 원-핫 인코딩을 진행할 것이다. # age의 결측값을 평균값으로 대체 replace_mean = df_train[df_train['age'] > 0]['age'].mean() df_train['age'] = df_train['age'].fillna(re..

2021. 9. 8. 17:03

[타이타닉 생존자 분류] - 1

타이타닉 데이터를 가지고 데이터 분석을 진행해보려고 한다. 타이타닉 데이터는 데이터 분석이나 머신러닝, 캐글에 대해 알고 있다면 여러 번 들어봤을 법한 입문자용 데이터셋이다. 이 데이터를 가지고 공부한다면 데이터 분석의 전반적인 지식을 쌓는데 많은 도움이 될 것이라고 생각한다. 탐색 : 타이타닉 데이터 살펴보기 pclass : Passenger Class, 승객 등급 survived : 생존 여부(생존은 1, 아닌 경우는 0) name : 승객 이름 sex : 승객 성별 age : 승객 나이 sibsp : 동승한 형제 또는 배우자 수 parch : 동승한 부모 또는 자녀 수 ticket : 티켓 번호 fare : 승객 지불 요금 cabin : 선실 이름 embarked : 승선항 (C = 쉘 부르크, Q..

2021. 6. 7. 20:53

[파이썬 실습] 정규화 모델 실습(2)

k fold cross validation으로 하이퍼 파라미터 찾기 ※ Train set / Test set - Test set을 통해 모델의 성능을 검증하고, 하이퍼 파라미터를 설정하게 되면 구축된 모델이 test set에 overfitting 될 수 있다. 일반적으로 하이퍼 파라미터를 탐색하기 위해서 따로 에러 값을 찾는 검증용 데이터셋(validation set)을 사용하게 된다. ※ Train set / Validation set / Test set > K-fold cross validation 모든 데이터셋을 Train에 활용할 수 있다. 정확도를 향상시킬 수 있다. 데이터 부족으로 인한 underfitting을 방지할 수 있다. 모든 데이터셋을 Validation에 활용할 수 있다. 평가에 사..

2021. 6. 5. 14:02

[파이썬 실습] 정규화 모델 실습(1)

목표 : 정규화 모델 구축 1. 데이터 전처리 Ridge, Lasso, Elasticnet regression 구축 (hyperparameter 탐색) 예측 결과 평가 및 변수 중요도 해석 1. 모듈 불러오기 from IPython.display import display, HTML import warnings warnings.filterwarnings('ignore') # 데이터 전처리 import numpy as np import pandas as pd from sklearn.model_selection import train_test_split from sklearn.linear_model import LinearRegression, Lasso, Ridge, ElasticNet, LassoCV, R..