✔ Python/1. Data Science
-
주제: 마스킹 데이터(Masking Data) 만들기 작성: 2024-01-10 1. 마스크 배열이란? 마스크(Mask) 배열은 데이터과학 및 프로그로밍에서 중요한 개념으로, 특정 조건에 따라 배열 내의 데이터 요소를 선택적으로 '숨기는'데 사용됩니다. 마치, 사람이 마스크로 얼굴을 가리는 것과 유사합니다. 이 방식은 배열의 일부 데이터를 처리에서 제외하거나 다르게 처리할 필요가 있을 때 유용합니다. 2. 마스킹 데이터가 필요한 이유 그럼, 마스킹 데이터가 필요한 이유에 대해 알아보도록 하겠습니다. 4가지(데이터 필터링, 개인정보 보호, 오류데이터 처리, 성능) 측면에서 고려해 볼 수 있습니다. 데이터 필터링: 특정 기준에 따라 데이터를 선택적으로 분석하거나 표시할 필요가 있을 때 마스킹을 사용 개인정보..
파이썬으로 데이터 마스킹하기 - Numpy.ma주제: 마스킹 데이터(Masking Data) 만들기 작성: 2024-01-10 1. 마스크 배열이란? 마스크(Mask) 배열은 데이터과학 및 프로그로밍에서 중요한 개념으로, 특정 조건에 따라 배열 내의 데이터 요소를 선택적으로 '숨기는'데 사용됩니다. 마치, 사람이 마스크로 얼굴을 가리는 것과 유사합니다. 이 방식은 배열의 일부 데이터를 처리에서 제외하거나 다르게 처리할 필요가 있을 때 유용합니다. 2. 마스킹 데이터가 필요한 이유 그럼, 마스킹 데이터가 필요한 이유에 대해 알아보도록 하겠습니다. 4가지(데이터 필터링, 개인정보 보호, 오류데이터 처리, 성능) 측면에서 고려해 볼 수 있습니다. 데이터 필터링: 특정 기준에 따라 데이터를 선택적으로 분석하거나 표시할 필요가 있을 때 마스킹을 사용 개인정보..
2024.01.10 -
주제: 웹크롤링으로 데이터다운 자동화하기 - 데이터 준비 작성: 2023-07-30 버전: python 3.9 발단 요즘은 "지구온난화", "기후변화"가 일상에서 실제로 체감되는 듯합니다. 기온상승과 더불어 문제는 것은 바로 해수온도입니다. 해수온도가 상승하면서 바다의 용존 산소량이 줄어들어, 바다가 머금을 수 있는 이산화탄소의 양이 줄어들게 됩니다. 이는 대기 중에 이산화탄소의 양이 증가하되며, 지구온난화 효과는 더 강화되는 악순환의 고리가 이어지게 되는 것이죠. 그래서 파이썬으로 직접 해수면의 온도를 직접 시각화하며, 연도별 변화를 확인하고 싶다는 생각이 들게 되었습니다. 관련 포스팅은 총 3개의 시리즈로 구성되며, 해당 포스팅은 첫 번째인 데이터 준비에 해당됩니다. 1. 데이터 준비 - SST(Su..
웹크롤링으로 SST(Surface Sea Temperature) 데이터 다운로드 자동화하기주제: 웹크롤링으로 데이터다운 자동화하기 - 데이터 준비 작성: 2023-07-30 버전: python 3.9 발단 요즘은 "지구온난화", "기후변화"가 일상에서 실제로 체감되는 듯합니다. 기온상승과 더불어 문제는 것은 바로 해수온도입니다. 해수온도가 상승하면서 바다의 용존 산소량이 줄어들어, 바다가 머금을 수 있는 이산화탄소의 양이 줄어들게 됩니다. 이는 대기 중에 이산화탄소의 양이 증가하되며, 지구온난화 효과는 더 강화되는 악순환의 고리가 이어지게 되는 것이죠. 그래서 파이썬으로 직접 해수면의 온도를 직접 시각화하며, 연도별 변화를 확인하고 싶다는 생각이 들게 되었습니다. 관련 포스팅은 총 3개의 시리즈로 구성되며, 해당 포스팅은 첫 번째인 데이터 준비에 해당됩니다. 1. 데이터 준비 - SST(Su..
2023.07.31 -
주제: 랜덤포레스트 작성: 2023-03-04 버젼: ① python : 3. 9.13 ② pandas : 1. 4. 4 ③ sklearn : 1. 1. 1 데이터: Pima Indians Diabetes Database 앙상블의 학습법은 Voting(보팅), Bagging(배깅), Boosting(부스팅), 스태킹(Stacking) 등의 방식이 있습니다. 이 중 보팅과 배깅은 여러 개의 분류리를 통해 투표를 하고 최종 예측 결과를 결정하는 방식입니다. 다만, 보팅은 각각의 분류기에서 서로 다른 알고리즘으로 결합하지만, 배깅은 데이터 샘플링만 다르게 가져가서 같은 알고리즘 분류기를 통해서 학습하는 방식입니다. 후자인 배깅방식으로 활용하는 대표적인 알고리즘은 랜덤포레스트입니다. 이번 포스팅에서는 랜덤포레스..
[머신러닝] 랜덤포레스트 예시 - Pima Indians Diabetes Database주제: 랜덤포레스트 작성: 2023-03-04 버젼: ① python : 3. 9.13 ② pandas : 1. 4. 4 ③ sklearn : 1. 1. 1 데이터: Pima Indians Diabetes Database 앙상블의 학습법은 Voting(보팅), Bagging(배깅), Boosting(부스팅), 스태킹(Stacking) 등의 방식이 있습니다. 이 중 보팅과 배깅은 여러 개의 분류리를 통해 투표를 하고 최종 예측 결과를 결정하는 방식입니다. 다만, 보팅은 각각의 분류기에서 서로 다른 알고리즘으로 결합하지만, 배깅은 데이터 샘플링만 다르게 가져가서 같은 알고리즘 분류기를 통해서 학습하는 방식입니다. 후자인 배깅방식으로 활용하는 대표적인 알고리즘은 랜덤포레스트입니다. 이번 포스팅에서는 랜덤포레스..
2023.03.04 -
주제: 결정트리 실습 작성: 2023-03-03 데이터: Pima Indians Diabetes Database 버젼: ① python : 3. 9.13 ② pandas : 1. 4. 4 ③ sklearn : 1. 1. 1 안녕하세요, wscode 루카스입니다. 본 포스팅은 「파이썬 머신러닝 완벽가이드」 의 독학한 내용을 기반으로 하고 있습니다. 사용하게 될 Pima Indians Diabetes Database 데이터는 로지스틱 회귀알고리즘을 적용 시, 더 높은 정확도가 나오나, 결정트리의 사용법을 익히기 위해 해당 알고리즘을 사용함을 사전에 알려드립니다. 1. 데이터 준비 Pima Indians Diabetes Database 데이터는 측정을 기반으로 환자의 당뇨병 여부를 진단하기위한 데이터입니다. ..
[머신러닝] 결정트리 실습 - Pima Indians Diabetes Database주제: 결정트리 실습 작성: 2023-03-03 데이터: Pima Indians Diabetes Database 버젼: ① python : 3. 9.13 ② pandas : 1. 4. 4 ③ sklearn : 1. 1. 1 안녕하세요, wscode 루카스입니다. 본 포스팅은 「파이썬 머신러닝 완벽가이드」 의 독학한 내용을 기반으로 하고 있습니다. 사용하게 될 Pima Indians Diabetes Database 데이터는 로지스틱 회귀알고리즘을 적용 시, 더 높은 정확도가 나오나, 결정트리의 사용법을 익히기 위해 해당 알고리즘을 사용함을 사전에 알려드립니다. 1. 데이터 준비 Pima Indians Diabetes Database 데이터는 측정을 기반으로 환자의 당뇨병 여부를 진단하기위한 데이터입니다. ..
2023.03.03 -
샘플사이즈가 커질수록 표본평균이 흩어지는 정도가 작아져서 모평균에 가깝게 모인다. 더불어 샘플사이즈가 커질수록 표본평균의 표준편차가 작아지는 것을 확인 할 수 있음. 죽, 샘풀사이즈를 크게하면 흩어짐이 적은 신뢰할 수 있는 표본평균을 구할수 있다, 표준오차(Standard Error) \[ 표준오차 = \frac{\sigma}{\sqrt{N}} \] 불편분산을 사용하면 편향이 사라진다. 아예 사라지는건 아니지만, 모분산으로 간주해도 좋을 만큼으로 변경된다. 더불어 샘플사이즈가 크면 불편분산은 모분산에 가까워진다. 불편성과 일치성의 개념 불편성 추정량의 기대값이 진짜 모수가 되는 특성 이는 평균을 냈을때도 과대 또는 과소가 되지않는 다는 뜻이며, 이는 곧 편향이 없는 추정량이라는 의미임 일치성 샘플사이즈가..
간단한 통계 개념 정리샘플사이즈가 커질수록 표본평균이 흩어지는 정도가 작아져서 모평균에 가깝게 모인다. 더불어 샘플사이즈가 커질수록 표본평균의 표준편차가 작아지는 것을 확인 할 수 있음. 죽, 샘풀사이즈를 크게하면 흩어짐이 적은 신뢰할 수 있는 표본평균을 구할수 있다, 표준오차(Standard Error) \[ 표준오차 = \frac{\sigma}{\sqrt{N}} \] 불편분산을 사용하면 편향이 사라진다. 아예 사라지는건 아니지만, 모분산으로 간주해도 좋을 만큼으로 변경된다. 더불어 샘플사이즈가 크면 불편분산은 모분산에 가까워진다. 불편성과 일치성의 개념 불편성 추정량의 기대값이 진짜 모수가 되는 특성 이는 평균을 냈을때도 과대 또는 과소가 되지않는 다는 뜻이며, 이는 곧 편향이 없는 추정량이라는 의미임 일치성 샘플사이즈가..
2023.02.14 -
1변량 데이터 하나의 변량(종류)만 있는 데이터를 1변량 데이터라고 합니다. 기본적인 통계량 기본적인 통계용어들을 익히도록 하겠습니다 총합(sum) 평균값(average) 표본분산 - 표본평균을 사용하여 분산을 계산한 값 수식 : \[\sigma^2 =\frac{1}{N} \sum_{i=1}^N (x_i - \mu)^2\] 불편분산 - 표본분산의 과소추정 경향을 보정하기 위한 개념, 불편분산 수식 : \[\sigma^2 =\frac{1}{N-1} \sum_{i=1}^N (x_i - \mu)^2 \] 표준편차 표준화 - 데이터의 평균을 0으로, 표준편차(분산)을 1로 하는 변환을 표준화라고합니다. 가량 키의 1cm와 몸무게 1kg간격의 차이는 동일한 것을 의미하지않기때문입니다. 이와 같은 표준화를 하는 이..
1변량 & 다변량 데이터 및 시각화 방안(with python)1변량 데이터 하나의 변량(종류)만 있는 데이터를 1변량 데이터라고 합니다. 기본적인 통계량 기본적인 통계용어들을 익히도록 하겠습니다 총합(sum) 평균값(average) 표본분산 - 표본평균을 사용하여 분산을 계산한 값 수식 : \[\sigma^2 =\frac{1}{N} \sum_{i=1}^N (x_i - \mu)^2\] 불편분산 - 표본분산의 과소추정 경향을 보정하기 위한 개념, 불편분산 수식 : \[\sigma^2 =\frac{1}{N-1} \sum_{i=1}^N (x_i - \mu)^2 \] 표준편차 표준화 - 데이터의 평균을 0으로, 표준편차(분산)을 1로 하는 변환을 표준화라고합니다. 가량 키의 1cm와 몸무게 1kg간격의 차이는 동일한 것을 의미하지않기때문입니다. 이와 같은 표준화를 하는 이..
2023.02.13 -
불편 분산 ? 불편분산은 표본분산이 모분산(모집단의 분산)에 비해 분산을 과소평가하면서 이를 보정하기 위해 나온 개념입니다. 분산을 계산하기위해서는 사전에 평균값을 알고 있어야합니다. 하지만, 표준평균값은 표본에서 구한 값입니다. 다시말해, 모집단의 평균값과는 당연히 그 차이가 발생하게 됩니다. 모평균과 차이가 있는 표본평균을 사용하여 표본분산을 예측하다보니 모분산 추정에 비약이 발생하게 됩니다. 불편 분산 계산식 \[ \sigma^2 =\frac{1}{N-1} \sum_{i=1}^N (x_i - \mu)^2 \] 분모가 n-1이 되어 조금 작아지기때문에 표본분산보다 더 살짝 큰 값을 가지게됩니다. 왜 분산이 과소평가 된다고 하는 걸까요? 과소평가되는 부분은 예시를 통해서 설명하도록 하겠습니다(그래야 이..
불편분산은 왜 n-1로 나누지?불편 분산 ? 불편분산은 표본분산이 모분산(모집단의 분산)에 비해 분산을 과소평가하면서 이를 보정하기 위해 나온 개념입니다. 분산을 계산하기위해서는 사전에 평균값을 알고 있어야합니다. 하지만, 표준평균값은 표본에서 구한 값입니다. 다시말해, 모집단의 평균값과는 당연히 그 차이가 발생하게 됩니다. 모평균과 차이가 있는 표본평균을 사용하여 표본분산을 예측하다보니 모분산 추정에 비약이 발생하게 됩니다. 불편 분산 계산식 \[ \sigma^2 =\frac{1}{N-1} \sum_{i=1}^N (x_i - \mu)^2 \] 분모가 n-1이 되어 조금 작아지기때문에 표본분산보다 더 살짝 큰 값을 가지게됩니다. 왜 분산이 과소평가 된다고 하는 걸까요? 과소평가되는 부분은 예시를 통해서 설명하도록 하겠습니다(그래야 이..
2023.02.12 -
주제: 타이타닉 생존자 예측하기 작성: 2023-02-05 활용데이터: https://www.kaggle.com/competitions/titanic/data 안녕하세요, WSCODE 루카스입니다. 사이킷런으로 수행하는 타이타닉 생존자 예측해보도록 하겠습니다. 1. 데이터 다운로드 우선, 데이터확보가 필요합니다. 데이터는 kaggle 제공하는 타이타닉 생존자 데이터를 활용하도록 하겠습니다. 하단의 링크를 클릭하시면, 데이터의 간략한 설명 및 각 레이블이 의미하는 값이 무엇인지 설명되어 있습니다. https://www.kaggle.com/competitions/titanic/data 혹시라도 귀찮으신분들은 데이터파일 참보하였으니 다운로드하셔서 진행하시면 됩니다. 1. 전체 소스코드 우선 전체 소스코드입니다..
[머신러닝] 타이타닉 생존자 예측하기주제: 타이타닉 생존자 예측하기 작성: 2023-02-05 활용데이터: https://www.kaggle.com/competitions/titanic/data 안녕하세요, WSCODE 루카스입니다. 사이킷런으로 수행하는 타이타닉 생존자 예측해보도록 하겠습니다. 1. 데이터 다운로드 우선, 데이터확보가 필요합니다. 데이터는 kaggle 제공하는 타이타닉 생존자 데이터를 활용하도록 하겠습니다. 하단의 링크를 클릭하시면, 데이터의 간략한 설명 및 각 레이블이 의미하는 값이 무엇인지 설명되어 있습니다. https://www.kaggle.com/competitions/titanic/data 혹시라도 귀찮으신분들은 데이터파일 참보하였으니 다운로드하셔서 진행하시면 됩니다. 1. 전체 소스코드 우선 전체 소스코드입니다..
2023.02.06 -
주제: 사이킷런으로 시작하는 머신러닝 작성: 2023-02-04 버젼: pandas 1.4.4 / sklearn 1.1.1 활용데이터: 붓꽃 데이터(from sklearn.datasets import load_iris) 안녕하세요, 루카스입니다. 오늘은 파이썬 머신러닝으로 가장 많이 활용되는 라이브러리, 사이킷런(scikit-learn)을 소개합니다. 우선, 머신러닝이란? 학습을 위해서 다양한 피처와 분류결정값인 레이블 데이터를 모델로 학습한 뒤, 별도의 테스트를 통해서 미지의 레이블을 예측 및 분류하는 것 방법입니다. 다시말해, 지도학습은 명확한 정답이 주어진 데이터를 먼저 학습한 뒤 미지의 정답을 예측하는 방식입니다. 머신러닝은 크게 지도학습(supervised Learning)과 비지도학습으로 나눠..
[머신러닝] 사이킷런으로 시작하는 머신러닝주제: 사이킷런으로 시작하는 머신러닝 작성: 2023-02-04 버젼: pandas 1.4.4 / sklearn 1.1.1 활용데이터: 붓꽃 데이터(from sklearn.datasets import load_iris) 안녕하세요, 루카스입니다. 오늘은 파이썬 머신러닝으로 가장 많이 활용되는 라이브러리, 사이킷런(scikit-learn)을 소개합니다. 우선, 머신러닝이란? 학습을 위해서 다양한 피처와 분류결정값인 레이블 데이터를 모델로 학습한 뒤, 별도의 테스트를 통해서 미지의 레이블을 예측 및 분류하는 것 방법입니다. 다시말해, 지도학습은 명확한 정답이 주어진 데이터를 먼저 학습한 뒤 미지의 정답을 예측하는 방식입니다. 머신러닝은 크게 지도학습(supervised Learning)과 비지도학습으로 나눠..
2023.02.06 -
주제 : 각도기 작성일 : 2023-01-12 안녕하세요, WSCODE 루카스입니다. 개발자를 꿈꾸는 사람이라면, '네카라쿠배'라는 신조어를 들어보셨을 텐데요. 바로, 대한민국 IT업계에서 네이버, 카카오톡, 라인, 쿠팡, 배달의 민족을 함께 일컫는 용어입니다. 오늘은 코딩테스트하면서 재미있는 소스가 있어서 가져와봤습니다. 1. 문제 설명 의도적인 공백 🤔 여러분은 해당 문제를 어떻게 푸실건가요? 🤔 2. 필자가 작성한 답안 필자의 경우에는 문제풀어서 답이 나오데에만 집중해서 풀었습니다. IF 조건문 활용 def solution(angle): if angle < 90 : return 1 elif angle == 90 : return 2 elif angle < 180 : return 3 else : ret..
[알고리즘] 각도기주제 : 각도기 작성일 : 2023-01-12 안녕하세요, WSCODE 루카스입니다. 개발자를 꿈꾸는 사람이라면, '네카라쿠배'라는 신조어를 들어보셨을 텐데요. 바로, 대한민국 IT업계에서 네이버, 카카오톡, 라인, 쿠팡, 배달의 민족을 함께 일컫는 용어입니다. 오늘은 코딩테스트하면서 재미있는 소스가 있어서 가져와봤습니다. 1. 문제 설명 의도적인 공백 🤔 여러분은 해당 문제를 어떻게 푸실건가요? 🤔 2. 필자가 작성한 답안 필자의 경우에는 문제풀어서 답이 나오데에만 집중해서 풀었습니다. IF 조건문 활용 def solution(angle): if angle < 90 : return 1 elif angle == 90 : return 2 elif angle < 180 : return 3 else : ret..
2023.01.12 -
1st level. Titanic: Machine Learning from Disaster 타이타닉 튜토리얼 1 - Exploratory data analysis, visualization, machine learning EDA To Prediction(DieTanic) Titanic Top 4% with ensemble modeling Introduction to Ensembling/Stacking in Python 2nd level. Porto Seguro’s Safe Driver Prediction Data Preparation & Exploration Interactive Porto Insights - A Plot.ly Tutorial XGBoost CV (LB .284) Porto Seguro ..
[Kaggle]Binary classification : Tabular data1st level. Titanic: Machine Learning from Disaster 타이타닉 튜토리얼 1 - Exploratory data analysis, visualization, machine learning EDA To Prediction(DieTanic) Titanic Top 4% with ensemble modeling Introduction to Ensembling/Stacking in Python 2nd level. Porto Seguro’s Safe Driver Prediction Data Preparation & Exploration Interactive Porto Insights - A Plot.ly Tutorial XGBoost CV (LB .284) Porto Seguro ..
2022.08.15 -
개발자L 주 제 : 차원 축소(Dimension Reduction) 작성일 : 2022.02.06 1. 차원 축소(Dimension Reduction) 차원축소란 매우 많은 피처로 구성된 다차원 데이터의 차원을 축소하여 새로운 차원의 데이터를 생성하는 것으로 의미합니다. 일반적으로 수많은 피처로 구성된 데이터셋은 상대적으로 적은 차원에 학습된 모델보다 예측 신뢰도가 떨어지게됩니다. 또한, 피처가 필요이상으로 많은 경우, 피처간의 상관관계가 높아져 모델의 예측 성능이 저하됩니다. ※ 선형회귀에서는 입력변수간의 상관관계를 확인하기위해 다중 공선성(VIF)를 확인하며, 통상 10을 기준점으로 판단함 차원축소는 피처 선택(Feature Selection)과 피처 추출(Feature Extraction)으로 나눌..
차원 축소(Dimension Reduction)개발자L 주 제 : 차원 축소(Dimension Reduction) 작성일 : 2022.02.06 1. 차원 축소(Dimension Reduction) 차원축소란 매우 많은 피처로 구성된 다차원 데이터의 차원을 축소하여 새로운 차원의 데이터를 생성하는 것으로 의미합니다. 일반적으로 수많은 피처로 구성된 데이터셋은 상대적으로 적은 차원에 학습된 모델보다 예측 신뢰도가 떨어지게됩니다. 또한, 피처가 필요이상으로 많은 경우, 피처간의 상관관계가 높아져 모델의 예측 성능이 저하됩니다. ※ 선형회귀에서는 입력변수간의 상관관계를 확인하기위해 다중 공선성(VIF)를 확인하며, 통상 10을 기준점으로 판단함 차원축소는 피처 선택(Feature Selection)과 피처 추출(Feature Extraction)으로 나눌..
2022.02.06