본문 바로가기

Python/MachineLearning17

Regression - Data Preprocessing (2) 문자열의 데이터처리( Label Encoding, One Hot Encoding) 2024.04.12 - [MachineLearning] - Regression - Data Preprocessing (1) - Nan처리, X와y의 데이터 분류 3. 문자열을 데이터로 처리   위에서 봤듯이 국적과 구매여부의 문자열은 컴퓨터가 이해하기 어려워한다 그러니 컴퓨터가 이해하기 쉬운 숫자로 변환시켜줘야 한다 레이블 인코딩과 원 핫 인코딩 컴퓨터가 이해하기 어려운 문자열을이해하기 쉬워하는 숫자로변환시켜주면 되겠다  from sklearn.preprocessing import LabelEncoder, OneHotEncoderfrom sklearn.compose import ColumnTransformer 임포트들.. 2024. 4. 13.
Regression - Data Preprocessing (1) - Nan처리, X와y의 데이터 분류 국적과 나이, 그 사람의 연봉, 그 사람의 구매여부 라는 데이터가 있을때 각각의 국적별, 나이별, 연봉별, 구매여부별로 나누어서 데이터를 학습시켜 다른 데이터들이 들어왔을때 그 사람이 구매를 할지 안 할지를 예측해보자 1. NaN 처리 우선 맨 첫번째 단계는 NaN이 있는지 확인후 없다면 그대로 다음 단계로 넘어가고 있다면 삭제를 하든 데이터를 채워주든 해야할 것이다 df.isna().sum() Country 0 Age 1 Salary 1 Purchased 0 dtype: int64 이렇게 된 경우에는 2가지 방법이 있다 1 - 1. 삭제하는 방법 df.dropna() 4번과 6번이 사라진게 보인다 1 - 2. 채우는 방법 df.fillna(df.mean(numeric_only=True)) 4번의 연봉,.. 2024. 4. 12.
머신 러닝이란? - 기초 개념 이제와선 별 것 아닌거라 생각 되는 것들이지만  데이터들을 모아 학습시켜 행동하게끔 알아서 만들어 놓아진것들은 대부분 머신러닝     머신러닝은 크게 supervised , unsupervised 로 나뉘게 되며 이중 supervised는  또 Regression(회귀) 과 Classification(분류) 로 나뉘게 되는데  Regression 은 각종 데이터들을 준뒤 일단 학습  시킨후이러 이러 이러한 데이터들을 줬을때 다른 데이터를 예측하는 기능 예를 들면 어떤 사람의 교육수준, 나이, 주거지 등등의 다양한 데이터들을 모아 연간 소득을 예측한다든지  그리고 Classification 은 어떠한 데이터를 보고 분류하는 기능 예를 들면 사진을 보고 개인지 고양인지사람을 보고 웃는지 화난건지 슬픈건지 등.. 2024. 4. 12.
피처스케일링 - 표준화(Standard), 정규화(MinMax) 피처스케일링이란 서로 다른 피처값의 범위(각각의 최대값, 각각의 최소값)등을 일치하도록 조정하는 작업이다 값의 범위가 데이터마다 다르면 인간조차도 해석이 쉽지 않은데 컴퓨터 또한 의미를 알지 못하기 때문에 하는것이 이롭고 해야만 한다 피처스케일링은 표준화와 정규화로 나뉘게 되는데 일반적으로 정규화가 더 많이 쓰인다 표준화 - Standardisation 공식은 어차피 컴퓨터가 알아서 할테니 자세히 알것까진 없고 표준편차와 평균을 중심으로 하는 스케일링 기법 이라는것까지만 알자 평균을 0으로 놓고 결과 분포에 따라 단위 표준편차를 사용한다 정규화 - Normalisation 마찬가지로 공식을 외울 필요는 없고 최소값과,최대값을 이용하여 0과 1 사이의 범위로 재조정시키는 스케일링 기법 이라는 정도만 기억하.. 2024. 4. 11.
Google API - geocode 주소 가져오기 이렇게 적혀있는 데이터들을 구글api를 이용하여 주소를 찾아 구 별로 나누어주는 작업을 해보자 우선 검색에 용이하도록 관서명의 데이터에서 왼쪽에는 서울, 오른쪽에는 서 대신 경찰서를 붙이는 작업 df['관서명'] = '서울 ' + df['관서명'] df['관서명'] = df['관서명'].str[ 0 : -1] df['관서명'] = df['관서명'] + ' 경찰서' 이렇게 서울을 추가하고 서를 지우고 경찰서를 추가해도 좋지만 df['관서명'] = df['관서명'].str[ 0 : -1] 서울 + df['관서명'] + 경찰서 2줄로 끊으면 더욱 깔끔하겠다 pip install googlemaps 우선은 구글맵스 설치를 하고 import googlemaps gmaps_key = " " # 자신의 key를 사용.. 2024. 4. 11.