본문 바로가기
728x90
반응형

Programming52

[Python] Pandas 'settingWithCopyWarning' 경고 메세지 없애기 증상 df2 = df[['A']] df2['A'] /= 2 df2 A 0 2.5 1 4.5 2 3.5 해결 방법 1. (recommended) Use loc to lice subsets df2 = df.loc[:, ['A']] df2['A'] /= 2 # Does not raise 2. pd.options.mode.chained_assignment 모드 변경 pd.options.mode.chained_assignment = None df2['A'] /= 2 3. Make a deepcopy df2 = df[['A']].copy(deep=True) df2['A'] /= 2 References stackoverflow.com/questions/20625582/how-to-deal-with-settingwit.. 2021. 5. 9.
(Data scientist 인터뷰) Time series forecasting 예제 얼마전 아는 사람으로부터 Data Scientist 인터뷰에 나왔던 문제를 공유 받았다. 문제는 time series 모델링에 대한 것이고, 예측 모델을 만들어 주어진 데이터 밖의 값을 예측하는 것이다. 데이터 사이언스 관련해서 공부하는 사람이 있다면 한번 생각해 봐도 좋을 것 같아 문제를 포스팅 해본다. 문제는 다음과 같다. 한 달 동안 다른 도로에서 기록된 차량의 속도에 대한 데이타가 주어진다. 이것으로부터 예측모델을 만들고 다음 10, 20, 30분 후의 속도를 예측하라. 요구사항: 1. 전체 데이터를 훈련과 검증을 위한 세트로 분할하라 2. performance metrics 를 선택하고 모델의 성능을 평가하라 3. 프레젠테이션을 만들어 문제 해결 과정을 설명하라. 4. 코드와 ppt를 zip파일.. 2021. 5. 9.
시계열 모델의 교차검증 (cross-validation) 전략 (파이썬 코드 포함) 두 가지 time series 교차검증 (cross-validation) 방법 교차검증 cross validataion (CV) 은 데이터 모델링에 있어 모델의 정확도를 확인할 수 있는 효율적인 방법이다. 이것은 데이터를 훈련용과 테스트용을 순서 없이 나누는 과정을 포함한다. 하지만, 전후 데이터 사이의 상관관계가 존재하는 시계열 데이터(time series data)를 모델링할 때는 기존의 사용하는 CV를 적용할 수 없다. 이때는 시간순으로 나열된 데이터를 보존하면서 훈련용과 테스트용으로 데이터를 나눠야 한다. 다음의 두 가지 방법이 대표적으로 사용된다. Time series cross validation / blocked time cross validation Helper function: visua.. 2021. 5. 4.
Seaborn boxplot으로 five-number summary 이해하기 Seaborn boxplot with 'tips' dataset seaborn 라이브러리에서 제공하는 "tips" 데이타셋으로 five-number summary에 대해서 알아보자. 다음과 같이 데이터를 로딩한다. import seaborn as sns tips = sns.load_dataset("tips") tips 위의 표에서 보듯이 총 7개의 컬럼이 있다. 이중 'total_bill' 컬럼 데이터에 대한 boxplot을 그려 보자. 참고로 x축의 tick의 개수는 'set_major_locator' 매서드와 matplotlib의 ticker로 조절할 수 있다. import matplotlib.pyplot as plt import matplotlib.ticker as ticker ax = sns.bo.. 2021. 5. 3.
728x90
반응형