전체 글 175

파이썬. 머신러닝 - Linear Regression ?

리니어 리그레션은 수치와 관련된 예측을 하는 인공지능입니다. y = aX+b 의 방정식을 기반으로 임의의 a , b 값을 설정하여 (x의 종류가 여러개일수도있습니다.) X값과 y을 넣어 오차가 적어지는 a,b값을 구하는 방법이다. 먼저 학습할 데이터를 가져옵니다. 위와 같은 값을 가진 데이터프레임에서 경력별로 연봉값을 알고 싶습니다. 먼저 NaN값이 있는지 확인합니다. df.isna().sum() 이제 X와 y 값을 나눕니다. X = df.loc[:,'YearsExperience'].to_frame() # X를 반드시 dataframe 으로 가져와야합니다. y = df['Salary'] 문자열 데이터가 있을 경우 바꿔줘야 합니다만 지금은 없기 때문에 넘어갑니다. 또한 피처스케일링(노멀라이징) 과정 또한 ..

개발/머신러닝 2022.12.01

파이썬. 머신러닝 - Encoding 한 데이터의 범위 지정 (노멀라이징)

데이터분석을 위해 데이터들의 범위를 비슷하게 만드는 노멀라이징을 해봅시다. 지난번에 이어 위와 같은 컬럼을 인코딩한 X = y = 가 있습니다. 표준화 또는 정규화 하기위해 라이브러리를 import 합시다. from sklearn.preprocessing import StandardScaler , MinMaxScaler X 먼저 해봅시다 표준화 를 이용해보겠습니다. s_scaler_x = StandardScaler() s_scaler_x.fit_transform( X ) 이번에는 정규화로 해보겠습니다. m_scaler_x = MinMaxScaler() m_scaler_x.fit_transform(X) 이런식으로 범위를 통일합니다. y도 해줘야 합니다만 지금 y = 0 or 1 로 되어있기 때문에 할 필요..

개발/머신러닝 2022.12.01

파이썬. 머신러닝 - sklearn 을 이용한 Encoding (Label , One-Hot)

먼저 sklearn 을 설치합니다. 아나콘다 프롬프트에서 $ conda install -c conda-forge scikit-learn 을 입력합니다. import numpy as np import matplotlib.pyplot as plt import pandas as pd 데이터와 관련된 라이브러리들을 다 가져와 주세요. 그 다음 가져온 데이터를 처리해야합니다. 처리방법은 1. 분석할 데이터를 설정합니다. 2. 데이터에 NaN값이 없도록 설정합니다. 위와 같은 df 로 Purchased 의 결과를 예측하고 싶습니다. 이제 데이터에 NaN값을 처리할텐데 삭제할지, 데이터를 추가할지는 여러분들이 생각해야합니다. 저는 삭제하는 방식으로 처리하겠습니다. df.dropna(inplace = True) 자 그..

개발/머신러닝 2022.12.01

파이썬. 머신러닝이란?

머신러닝이란? 데이터를 이용하여 그 데이터의 특성과 패턴을 '학습'하여 그 결과를 바탕으로 '예측'한 결과이다. 크게 2가지 분류로 나뉘며 Supervised , Unsupervised 로 나뉩니다. Supervised 는 질문과 정답을 통해 결과를 예측하고, Unsupervised 는 정답은 없으나 비슷한 데이터들을 군집화하여 예측합니다. 이러한 예측값(검은선)이 데이터(푸른점)과 가깝다면 예측률이 높고 그러지 못하면 예측이 틀린 결과 입니다. 다만 너무 딱 맞는 overfitting 상태면 이 예측 또한 틀리게 됩니다. ( 이미 학습시킨 데이터의 결과이므로 앞으로 추가될 데이터에 대해서는 예측이 어렵다.)

개발/머신러닝 2022.12.01

파이썬. date array를 처리하는 datetime64

from datetime import datetime someday=datetime(2022,5,11,15,30) someday.isoformat() #보기편하게 출력 someday.weekday() # 요일출력 someday.strftime('%Y년 %m월 %d일') #형식 date_str = '2022-05-21' from dateutil.parser import parse parse(date_str) # 문자열변환 지금까지 datetime을 위와 같은 식으로 이용을 했습니다. 다만 이제 parse에서 문자열을 한개만 입력을 받았는데 이를 list로 여러개의 항목을 바꾸려고 값을 넣어보면 에러가 뜹니다. date_list = ['2022-05-11','2022-06-10','2022-07-03'] p..

개발/파이썬 2022.11.30

파이썬. 노멀라이징

데이터를 노멀라이징 하는 이유는 각데이터의 범위를 통일시켜 해석하기 위함입니다. 사이킷런 이라는 라이브러리에 preprocessing 을 가져옵니다. 1. 표준화 방법 from sklearn.preprocessing import StandardScaler s_scaler = StandardScaler() s_scaler.fit_transform( df.column ) 2. 정규화방법 from sklearn.preprocessing import MinMaxScaler m_scaler = MinMaxScaler() X_scaled2 = m_scaler.fit_transform( df.column )

개발/파이썬 2022.11.30

파이썬. DataFrame 의 Data를 슬라이싱, list로 바꾸기, pivot_table

Dataframe의 문자열 데이터를 가져왔을 때 이 문자열을 슬라이싱하고 싶다면 .str 로 가능하게 됩니다. 위와 같은 데이터프레임이 있습니다. 관서명을 앞에는 서울 뒤에 서는 경찰서로 바꾸고 싶습니다. names = '서울' + df['관서명'].str[:-1]+'경찰서' 방법은 여러가지 있으나 간단하게 마지막글자를 제외하고 가져와 뒤에 붙혀주는 방법을 이용했습니다. 이때 슬라이싱을 하기위해 문자열 str 을 가져와 이용합니다. .str 은 str의 함수들을 사용할 수 있게 합니다. 이렇게 가져온 데이터들은 Series 데이터 입니다. 이를 리스트로 바꾸고 싶다면 앞선 포스팅에서는 dataframe으로 만드는 방법 to_frame 을 이용했습니다. 이번에는 to_list로 만들면 됩니다. names...

개발/파이썬 2022.11.30

파이썬. DataFrame Plot

DataFrame 의 자료를 통해 Plot 차트를 만들어봅시다. Plot()함수를 이용합니다. 위와 같은 자료를 가진 data_result 가 있습니다. 차트로 만들기 위해 plot()을 이용합니다. data_result.plot() plt.show() plot은 기본적으로는 선으로 연결됩니다. bar 형태로 만들고 싶다면, plot(kind='bar')로 kind에 파라미터 bar를 넣어주면 됩니다. data_result[['외국인','고령자']].plot(kind='bar') # 외국인과 고령자 자료만 바로 만듭니다. plt.show()

개발/파이썬 2022.11.29