Data Analysis

Python 45

[Python] 타이타닉 데이터를 이용한 전처리 방법

데이터 불러오기 import pandas as pd train = pd.read_csv("타이타닉/train.csv") test = pd.read_csv("타이타닉/test.csv") shape 확인해보기 print(train.shape) print(test.shape) train.columns # train과 test의 column은 다음과 같습니다. # # PassengerId : 탑승객의 고유 아이디 # Survival : 생존여부(0: 사망, 1: 생존) # Pclass : 등실의 등급(1: 1등급, 2: 2등급, 3: 3등급) # Name : 이름 # Sex : 성별 # Age : 나이 # Sibsp : 함께 탑승한 형제자매, 아내 남편의 수 # Parch: 함께 탑승한 부모, 자식의 수 # T..

Python 2023.01.04

[Python] Python-excel (1)

워크북 생성하기 # openpyxl 임폴트 하기 from openpyxl import Workbook filename = '사원_정보 2.xlsx' # Workbook 객체 생성 e_info_wb = Workbook() # 활성화된 워크시트 변수 할당 active_ws = e_info_wb.active # 제목 설정 active_ws.title = '인사_기록' # 워크북에 '과거_인사_평가', '연봉' 워크시트 추가 e_info_wb.create_sheet('과거_인사_평가') e_info_wb.create_sheet('연봉') # 워크북 저장 e_info_wb.save(filename) 엑셀 파일 불러오기 from openpyxl import load_workbook filename = '사원_정보 ..

Python 2023.01.03

[머신러닝] 벡터의 내적연산

인공지은 인식은 벡터 연산이다 이러한 신경망 구조를 쉽게 이해하려면 벡터연산을 기억하며 된다. 그중에서도 벡터의 '내적' 연산이다 벡터의 내적 특징은, 두개의 벡터가 서로 유사할 수록 그 내적값이 커진다는 것이다. 두 벡터가 완전히 같을 경우 가장 큰 양의 값을 가지며, 두 벡터가 멀리 있으면 내적 결과가 음의 값으로 나온다. 즉 벡터란 닮음의 정도를 펼가할 때 정말 유용하게 사용할 수 있는 수학적 도구이다. 다음 그림의 유사성을 비교한다고 했을 때, 육안으로도 빨간색 화살표 쪽이 왼쪽 모양과 더 유사하다는 것을 알 수 있다. 그렇다면 컴퓨터는 어떻게 인식할까? 컴퓨터는 다음과 같이 자신의 모양, 즉 대표 그림은 각각의 선 자체에 정보를 저장해 두고 필요할 때만 꺼내서 사용할 수 있다. 그리고 이러한 과..

[딥러닝] 텐서플로로 순환신경망 만들기

SimpleRNN 클래스로 순환 신경망 만들기 순환 신경망에 필요한 클래스 임포트 하기 from tensorflow.keras.models import Sequential from tensorflow.keras.layers import Dense, SimpleRNN 텐서플로에서 가장 기본적인 순환층은 SimpleRNN 클래스이다. Sequential, SimpleRNN 클래스와 마지막 출력층을 위한 Dense 클래스를 임포트합니다. 모델 만들기 model = Sequential() model.add(SimpleRNN(32, input_shape=(100,100))) model.add(Dense(1, activation='sigmoid')) model.summary() 모델 컴파일 후 훈련시키기 model..

[딥러닝] 텍스트 분류(순환신경망)

IMDB 데이터 전처리 후 핫인코딩 해보기 텐서플로에서 IMDB 데이터 세트 불러오기 mport numpy as np import tensorflow from tensorflow.keras.datasets import imdb (x_train_all, y_train_all), (x_test, y_test) = imdb.load_data(skip_top=20, num_words=100) 훈련세트 크기,샘플 확인 print(x_train_all.shape,y_train_all.shape) print(x_train_all[0]) 숫자 2는 사전에 없는단어, 0,1은 패딩과 글의 시작을 나타냄으로 제외하기 for i in range(len(x_train_all)): x_train_all[i] = [w for w..

[Python] Matplotlib (11) 다양한 패턴 채우기

Matplotlib 그래프 영역 또는 도형에 다양한 패턴을 채우는 방법을 소개합니다. Keyword: 패턴 채우기, hatch, set_hatch() 기본 사용 plt.style.use('default') plt.rcParams['figure.figsize'] = (6, 5) plt.rcParams['font.size'] = 12 x = [1, 2, 3] y = [1, 2, 3] fig, ((ax1, ax2), (ax3, ax4)) = plt.subplots(2, 2) ax1.bar(x, y, color='aquamarine', edgecolor='black', hatch='/') ax2.bar(x, y, color='salmon', edgecolor='black', hatch='\\') ax3.bar(..

[Python] Matplotlib (10) 박스 플롯 그리기

박스 플롯 (Box plot) 또는 박스-위스커 플롯 (Box-Whisker plot)은 수치 데이터를 표현하는 하나의 방식입니다. 일반적으로 박스 플롯은 전체 데이터로부터 얻어진 아래의 다섯 가지 요약 수치를 사용해서 그려집니다. - 최소값 - 제 1사분위 수 (Q1) - 제 2사분위 수 또는 중위수 (Q2) - 제 3사분위 수 (Q3) - 최대값 - 사분위 수는 데이터를 4등분한 지점을 의미합니다. 예를 들어, 제 1사분위 수는 전체 데이터 중 하위 25%에 해당하는 값이고, 제 3사분위 수는 전체 데이터 중 상위 25%에 해당하는 값입니다. - 이번 페이지에서는 박스 플롯을 통해 데이터의 분포를 시각화하고, 다양한 방식으로 꾸미는 방법에 대해 소개합니다. - Keyword: 박스 플롯 (Box pl..

[Python] Matplotlib (9) 텍스트 삽입하기

matplotlib.pyplot 모듈의 text() 함수는 그래프의 적절한 위치에 텍스트를 삽입하도록 합니다. text() 함수를 사용해서 그래프 영역에 텍스트를 삽입하고, 다양하게 꾸미는 방법에 대해 소개합니다. Keyword: plt.text(), text, 텍스트 삽입 (히스토그램 그리기 참조) 텍스트 삽입 기본 사용 a = 2.0 * np.random.randn(10000) + 1.0 b = np.random.standard_normal(10000) c = 20.0 * np.random.rand(5000) - 10.0 plt.hist(a, bins=100, density=True, alpha=0.7, histtype='step') plt.text(1.0, 0.35, '2.0*np.random.ra..

[Python] Matplotlib (8) 파이 차트 그리기

파이 차트 (Pie chart, 원 그래프)는 범주별 구성 비율을 원형으로 표현한 그래프입니다. 위의 그림과 같이 부채꼴의 중심각을 구성 비율에 비례하도록 표현합니다. matplotlib.pyplot 모듈의 pie() 함수를 이용해서 파이 차트를 그리는 방법에 대해 소개합니다. 파이 차트 기본 사용 ratio = [34, 32, 16, 18] labels = ['Apple', 'Banana', 'Melon', 'Grapes'] plt.pie(ratio, labels=labels, autopct='%.1f%%') plt.show() - 우선 각 영역의 비율과 이름을 ratio와 labels로 지정해주고, - pie() 함수에 순서대로 입력합니다. - autopct는 부채꼴 안에 표시될 숫자의 형식을 지정합..