본문 바로가기

프로그래머스 데브 코스/TIL

[6기] 프로그래머스 인공지능 데브코스 33일차 TIL

1003

6주차-Day1) End-to-End 실습

다른 데이터셋 이용해 실습 복습

코드 간단하게만 정리
import pandas as pd

def load_global_data():
    return pd.read_csv('./datasets/global/terrorismdb.csv', encoding='ISO-8859-1')

gloval = load_global_data()
gloval.head()

pip install chardet   # 데이터 형식 오류 떠서 해결하기 위한 설치

import chardet

with open('./datasets/global/terrorismdb.csv', 'rb') as rawdata:
    result = chardet.detect(rawdata.read(10000))

# check what the character encoding might be
print(result)   # 결과값 위에 있는 pd.read_csv 내에 있는 encoding 옵션값으로 추가해주면 됨

gloval.info()

gloval["country_txt"].value_counts()

gloval.describe()

%matplotlib inline
import matplotlib.pyplot as plt
gloval.hist(bins=50, figsize=(20,15))
save_fig("attribute_histogram_plots")
plt.show()

np.random.seed(42)

import numpy as np

def split_train_test(data, test_ratio):
    shuffled_indices = np.random.permutation(len(data))
    test_set_size = int(len(data) * test_ratio)
    test_indices = shuffled_indices[:test_set_size]
    train_indices = shuffled_indices[test_set_size:]
    return data.iloc[train_indices], data.iloc[test_indices]

train_set, test_set = split_train_test(gloval, 0.2)
len(train_set), len(test_set)
# train 세트와 test 세트 나누는 방식 1

from sklearn.model_selection import train_test_split
train_set, test_set = train_test_split(gloval, test_size=0.2, random_state=42)
# 사이킷런에서 기본적으로 제공하는 방식 권장