[Zero-base] Linear Regression(Wine 구별, Scaler)
·
Data Analyst/ML
Wine 데이터를 Scaling 하고 레드 와인과 화이트 와인으로 구별해보자!!Scaler란?동일한 범위 내로 데이터를 만들기 위해 사용하는 방법입니다. 종류1. min-max scaler- 최소 0 최대 1 이내의 범위에 데이터를 위치 시키는 방법이다.2. standard scaler- 각각의 데이터들이 평균이 0, 표준편차가 1이 되도록 만드는 방법이다.등등...TIP데이터 분석을 할 때 중요 특성에 대해서 알고있어야한다. 해당 중요 특성이 그래프나 분석할 때 영향을 많이 주기 때문이다.그래서 사용하는 함수인 feature_importances_ 함수를 사용하면 됩니다. 이제 본격적으로 Wine Data를 활용하여 Scaling을 하고 레드와인과 화이트 와인을 구별해보겠습니다. 1.우선 데이터를 받아..
[Zero-base]Linear Regression 2(보스턴 집 값 예측)
·
Data Analyst/ML
보스턴 집 값 예측하기!!from pandas import read_csvurl = 'https://raw.githubusercontent.com/PinkWink/forML_study_data/refs/heads/main/data/boston_housing.csv'column_names = ['CRIM', 'ZN', 'INDUS', 'CHAS', 'NOX', 'RM', 'AGE', 'DIS', 'RAD', 'TAX', 'PTRATIO', 'B', 'LSTAT', 'PRICE']boston_pd = read_csv(url, delimiter=r'\s+', names=column_names)boston_pdurl을 통해 csv파일을 pandas를 통해 DataFrame으로 만들어 주는 작업을 하였습니다.1...
[Zero-base]Linear Regression
·
Data Analyst/ML
지도 학습 & 비지도 학습지도학습 : 정답(Label)과 문제(feature) 이 있는 데이터셋을 사용해 모델을 학습하는 방법입니다. 주어진 입력 데이터에 대해 올바른 출력을 예측할 수 있도록 모델을 훈련시킵니다. 종류1. Classifier(분류)2. Regreession(회귀) 비지도 학습 : 정답(Label)이 없는 데이터를 이용해 패턴이나 구조를 찾아내는 기계 학습 방식입니다. 즉, 입력 데이터에 대한 명확한 정답이 주어지지 않은 상태에서 데이터를 이해하고, 이를 바탕으로 그룹화하거나 특징을 추출합니다. 종류1. 군집2. 차원 축 저희는 저번에 Iris 품종 구별(Classifier)를 하였습니다. 이번에는 회귀 중 선형 회귀에 대해 알아 볼 것입니다.우선 선형 그래프란 x축과 y축의 값으로 구성..
[Zero-base] EDA 4회차 테스트
·
Project/EDA 연습
Data 원본 출처Target Data(CSV): Global Internet Usage(국가별 인터넷 사용률)참고사항위 3개의 Data들은 생성 시기가 다르므로 이 Test에서 도출되는 결과는 실제와 일치하지 않습니다.문제에 hint가 있을 경우, 해당 hint를 이용하지 않으셔도 무방합니다.해당 Test는 Wiki의 Online Data를 가져오는 내용을 포함하고 있습니다우선 csv 파일을 읽어 DataFrame으로 변환 하겠습니다.import pandas as pd# 채점을 위한 코드입니다. 반드시 실행해주세요.from grading import *df_target = pd.read_csv('./datas/gapminder_internet.csv')df_target1단계: Target Data 불러..
[Zero-Base] Machine Learning - 1
·
Data Analyst/ML
꽃 잎과 꽃 밭침의 길이와 너비로 IRIS 꽃의 품종을 분류하는 모델을 만들어보자.# 사이킷런에 있는 아이리스 꽃에 대한 데이터셋을 가져옵니다.from sklearn.datasets import load_irisiris = load_iris()# 해당 iris에서 사용할 수 있는 함수들 목록을 불러옵니다.iris.keys()위의 코드를 사용하면 iris에 관련한 데이터 셋을 가져올 수 있습니다.그리고 keys()를 활용해 기본 정보를 볼 수 있는 함수 목록들을 볼 수 있습니다. # 특성 : 해당 iris 품종의 꽃받침 길이, 너비 또는 꽃잎의 길이, 너비가 있는 것을 확인할 수 있습니다.iris.feature_names # Label : 즉 iris 품종 우리가 예측해야 할 값.('setosa', 've..
SQL - Window Function (RANK, DENSE_RANK, LAG, LEAD)
·
Data Analyst/SQL
RANK 함수RANK 함수는 특정 컬럼의 값을 기준으로 순위를 매깁니다. 이 때 동일한 값이 있을 경우 같은 순위를 부여하지만, 다음 순위는 건너뜁니다.위 테이블에서 RANK() 함수는 두 번째와 세 번째 행에 같은 순위 2을 부여한 후, 네 번째 행에는 순위를 건너뛰어 4를 부여합니다. 사용 예시:select emp_no, salary, rank() over w as rank_num -- rank 함수 사용from salarieswhere emp_no = 10560window w as (partition by emp_no order by salary desc);DENSE_RANK 함수DENSE_RANK 함수도 순위를 매기지만, 순위가 건너뛰지 않는 점이 RANK 함수와 다릅니다. 동일한 값이..
[Zero-base] EDA 3회차 테스트
·
Project/EDA 연습
Data 원본 출처- Target Data(CSV): 역대(1976-2008) 하계 올림픽 메달리스트에 대한 정보- 올림픽 메달 취소 등 반영 안되어있음- 복식/단체 종목의 선수 수, 당시 메달 수여 룰, 메달 취소 및 승격/승계 등의 실제 메타데이터가 없이는 확인 어려움1단계: Load Data & Preprocessing3-1. Load Target Data문제 1-1) Target Data 가져오기 (10점)위에 제시된 링크 혹은 datas 폴더에 있는 데이터(Summer-Olympic-medals-1976-to-2008.csv)를 Pandas DataFrame으로 읽어 오세요.# 1-1import pandas as pd# 채점을 위한 코드입니다. 반드시 실행해주세요.from grading impo..
SQL - Window Functions (ROW_NUMBER)
·
Data Analyst/SQL
윈도우 함수(Window Functions)는 SQL에서 데이터 분석과 계산을 더욱 강력하고 유연하게 처리할 수 있게 해주는 기능입니다.데이터 집합을 다양한 방식으로 처리할 수 있도록 도와주는 윈도우 함수는 특히 데이터 분석 및 리포트 작성에 유용합니다.새로운 컬럼을 만들어서 출력합니다. 사용 예시:-- 무조건 over가 있어야 window function 사용이 가능합니다.SELECT column1, column2, ... ROW_NUMBER() OVER () AS row_numFROM table;ROW_NUMBER() : 각 행마다 순차적으로 숫자를 부여해주는 기능을 합니다. 즉, 기본적인 행 번호를 부여합니다. 활용 1: SELECT emp_no, title, salary, R..
SQL - Index, Case Statement
·
Data Analyst/SQL
MySQL 인덱스인덱스는 데이터베이스에서 검색 성능을 향상시키는 중요한 도구입니다. 책의 목차처럼 작동하며, 테이블의 특정 열을 빠르게 검색할 수 있도록 돕습니다. 인덱스 기본 생성:-- 방법CREATE INDEX index_nameON table_name (column_1, column_2, ...);-- 예시create index i_hire_date on employees(hire_date);이 구문에서 괄호 안에는 자주 검색할 열을 지정합니다. 단일 열 인덱스 뿐 아니라 다중 열을 사용한 복합 인덱스도 생성 할 수 있습니다. 복합 인덱스:-- 방법CREATE INDEX idx_nameON table_name (column1, column2);-- 예시create index i_composite o..
ML - Matplotlib SubPlots
·
Data Analyst/ML
plt.subplots()우선, numpy를 통해 데이터를 생성해보겠습니다.import numpy as np# a는 np.linspace를 사용하여 0부터 10까지 11개의 균등한 간격의 숫자를 생성a = np.linspace(0,10,11)# b는 a의 각 원소를 4제곱한 값을 가진 배열b = a ** 4# x는 0부터 9까지의 정수 배열을 생성x = np.arange(0,10)# x의 각 원소에 2를 곱한 값을 가진 배열y = 2 * x plt.subplots() 객체는 더 자동화된 축 관리자로 작용합니다. 이로 인해 여러 플롯을 나란히 표시하는 것이 훨씬 쉬워집니다.튜플 언패킹을 사용하여 Figure 객체와 numpy 배열의 축을 모두 잡는 방법에 주목하세요.# plt.figure()와 유사하게 사..
hmm06