SlideShare a Scribd company logo
1 of 11
Download to read offline
빅데이터 ~ 머신(딥)러닝
실무로 배우는 빅데이터 기술
 Python+Pandas 활용
☆ 확장하기 – 12편 ☆
김강원
판다스(Pandas) 는?
파이썬 기반으로 쉽고 편리하게 데이터 분석을 지원하는 라이브러리
※ Pandas의 기본 개념과 기능들은 구글링을 통해 확인 하세요!
파일럿 프로젝트 확장 (1/2)
Python
& Pandas
책 337 페이지 중에서… (개정판)
데이터 탐색 및 분석
파일럿 프로젝트 확장 (2/2)
확장편 실습
Python + Pandas 홗용
데이터 탐색/분석
 탐색/분석 데이터 확보
파일질라(FTP) 실행 > Server02 접속 > 파일 다운로드
- 다운로드 경로: /home/pilot-pjt/mahout-data/classification/input
- 다운로드 파일: classification_data.txt
- 다운로드 위치: D://data/
Step-1
 파이썬 홖경 구성 및 실행
윈도우 시작 메뉴 > Anaconda Prompt 실행
> Activate py35
> conda install seaborn
> jupyter notebook
Step-2
 Jupyter Notebook 생성
Jupyter Home > New > Python 3 실행
Step-3
 라이브러리 Import
import os.path
import pandas as pd
import numpy as np
import tensorflow as tf
import matplotlib.pyplot as plt
import matplotlib.gridspec as gridspec
import seaborn as sns
from sklearn import preprocessing
Step-4
 분석 데이터 로드
df= pd.read_csv("D://data/classification_dataset.txt", names = ["sex", "age", "marriage", "region", "job",
"car_capacity", "car_year", "car_model", "tire_fl", "tire_fr", "tire_bl", "tire_br", "light_fl", "light_fr",
"light_bl", "light_br", "engine_s", "break_s", "battery_s", "result"])
df.head()
Step-5
 미분석 항목 제외
df = df.drop(['sex','age','marriage','region','job','car_model'], axis =1)
df.head()
Step-6
 레이블 변수값 변홖
df.loc[df.result == '비정상', 'result'] = 1
df.loc[df.result == '정상', 'result'] = 0
df.head()
Step-7
 레이블 변수 탐색
print("# 비정상")
print(df.result[df.result ==1].describe())
print("====================================")
print("# 정상")
print(df.result[df.result ==0].describe())
Step-8
 비정상 데이터 탐색
f, ax1 = plt.subplots(1, 1, sharex=True, figsize=(12,4))
ax1.hist(df.car_year[df.result == 1], bins = 50)
ax1.set_title('Bad Condition')
plt.ylabel('Number of Transactions')
plt.show()
Step-9
 데이터 변홖 – 엔진/브레이크
df.loc[df.engine_s == 'A', 'engine_s'] = 0
df.loc[df.engine_s == 'B', 'engine_s'] = 50
df.loc[df.engine_s == 'C', 'engine_s'] = 100
df.loc[df.break_s == 'A', 'break_s'] = 0
df.loc[df.break_s == 'B', 'break_s'] = 50
df.loc[df.break_s == 'C', 'break_s'] = 100
Step-10
 데이터 정규화
dValues = df.values
min_max_scaler = preprocessing.MinMaxScaler()
dValues_scaled = min_max_scaler.fit_transform(dValues )
df = pd.DataFrame(dValues_scaled , columns = [ "car_capacity", "car_year", "tire_fl", "tire_fr",
"tire_bl", "tire_br", "light_fl", "light_fr", "light_bl", "light_br", "engine_s", "break_s", "battery_s",
"result"] )
Step-11
 영향도 낮은 변수 제외
df = df.drop(['tire_fl','tire_fr','tire_bl','tire_br','light_fl','light_fr','light_bl','light_br'], axis =1)
df.head()
Step-13
 변수(피처)들의 영향도 파악
v_features = df.ix[:,0:13].columns
plt.figure(figsize=(12,28*4))
gs = gridspec.GridSpec(28, 1)
for i, cn in enumerate(df[v_features]):
ax = plt.subplot(gs[i])
sns.distplot(df[cn][df.result == 1], bins=50, color='red')
sns.distplot(df[cn][df.result == 0], bins=50 )
ax.set_xlabel('')
ax.set_title('histogram of feature: ' + str(cn))
plt.show()
Step-12
 프로그램 저장
File > Rename > “12.Python&Pandas 활용”
Step-14
실무로 배우는 빅데이터 기술
확장하기 12편 – Python+Pandas 홗용
[ 강의자료 ]
 동 영 상: 유튜브 www.youtube.com
 실습문서: 슬라이드쉐어 www.slideshare.net

More Related Content

What's hot

[Pgday.Seoul 2017] 7. PostgreSQL DB Tuning 기업사례 - 송춘자
[Pgday.Seoul 2017] 7. PostgreSQL DB Tuning 기업사례 - 송춘자[Pgday.Seoul 2017] 7. PostgreSQL DB Tuning 기업사례 - 송춘자
[Pgday.Seoul 2017] 7. PostgreSQL DB Tuning 기업사례 - 송춘자PgDay.Seoul
 
1. Application - Pig
1. Application - Pig1. Application - Pig
1. Application - Pigmerry7
 
[143] Modern C++ 무조건 써야 해?
[143] Modern C++ 무조건 써야 해?[143] Modern C++ 무조건 써야 해?
[143] Modern C++ 무조건 써야 해?NAVER D2
 
[Pgday.Seoul 2021] 1. 예제로 살펴보는 포스트그레스큐엘의 독특한 SQL
[Pgday.Seoul 2021] 1. 예제로 살펴보는 포스트그레스큐엘의 독특한 SQL[Pgday.Seoul 2021] 1. 예제로 살펴보는 포스트그레스큐엘의 독특한 SQL
[Pgday.Seoul 2021] 1. 예제로 살펴보는 포스트그레스큐엘의 독특한 SQLPgDay.Seoul
 
잘 알려지지 않은 숨은 진주, Winsock API - WSAPoll, Fast Loopback
잘 알려지지 않은 숨은 진주, Winsock API - WSAPoll, Fast Loopback잘 알려지지 않은 숨은 진주, Winsock API - WSAPoll, Fast Loopback
잘 알려지지 않은 숨은 진주, Winsock API - WSAPoll, Fast Loopback흥배 최
 
[Gpg2권]1.1 c++ 게임의 최적화
[Gpg2권]1.1 c++ 게임의 최적화[Gpg2권]1.1 c++ 게임의 최적화
[Gpg2권]1.1 c++ 게임의 최적화KyeongWon Koo
 
사례를 통해 살펴보는 프로파일링과 최적화 NDC2013
사례를 통해 살펴보는 프로파일링과 최적화 NDC2013사례를 통해 살펴보는 프로파일링과 최적화 NDC2013
사례를 통해 살펴보는 프로파일링과 최적화 NDC2013Esun Kim
 
[Pgday.Seoul 2020] SQL Tuning
[Pgday.Seoul 2020] SQL Tuning[Pgday.Seoul 2020] SQL Tuning
[Pgday.Seoul 2020] SQL TuningPgDay.Seoul
 
[1B4]안드로이드 동시성_프로그래밍
[1B4]안드로이드 동시성_프로그래밍[1B4]안드로이드 동시성_프로그래밍
[1B4]안드로이드 동시성_프로그래밍NAVER D2
 
[Pgday.Seoul 2017] 8. PostgreSQL 10 새기능 소개 - 김상기
[Pgday.Seoul 2017] 8. PostgreSQL 10 새기능 소개 - 김상기[Pgday.Seoul 2017] 8. PostgreSQL 10 새기능 소개 - 김상기
[Pgday.Seoul 2017] 8. PostgreSQL 10 새기능 소개 - 김상기PgDay.Seoul
 
Startup JavaScript 8 - NPM, Express.JS
Startup JavaScript 8 - NPM, Express.JSStartup JavaScript 8 - NPM, Express.JS
Startup JavaScript 8 - NPM, Express.JSCirculus
 
ARTIK 710 IoT class 02
ARTIK 710 IoT class 02ARTIK 710 IoT class 02
ARTIK 710 IoT class 02정출 김
 
Learning Node Book, Chapter 5
Learning Node Book, Chapter 5Learning Node Book, Chapter 5
Learning Node Book, Chapter 5Ji Hun Kim
 
제 5회 Lisp 세미나 - 클로저 개발팀을 위한 지속적인 통합
제 5회 Lisp 세미나 - 클로저 개발팀을 위한 지속적인 통합제 5회 Lisp 세미나 - 클로저 개발팀을 위한 지속적인 통합
제 5회 Lisp 세미나 - 클로저 개발팀을 위한 지속적인 통합NAVER D2
 
[하코사세미나]미리보는 대규모 자바스크립트 어플리케이션 개발
[하코사세미나]미리보는 대규모 자바스크립트 어플리케이션 개발[하코사세미나]미리보는 대규모 자바스크립트 어플리케이션 개발
[하코사세미나]미리보는 대규모 자바스크립트 어플리케이션 개발정석 양
 
Infiniflux vs influxdb 비교 테스트 결과 2016 12월-v2
Infiniflux vs influxdb 비교 테스트 결과 2016 12월-v2Infiniflux vs influxdb 비교 테스트 결과 2016 12월-v2
Infiniflux vs influxdb 비교 테스트 결과 2016 12월-v2Andrew Sungjin Kim
 

What's hot (20)

[Pgday.Seoul 2017] 7. PostgreSQL DB Tuning 기업사례 - 송춘자
[Pgday.Seoul 2017] 7. PostgreSQL DB Tuning 기업사례 - 송춘자[Pgday.Seoul 2017] 7. PostgreSQL DB Tuning 기업사례 - 송춘자
[Pgday.Seoul 2017] 7. PostgreSQL DB Tuning 기업사례 - 송춘자
 
1. Application - Pig
1. Application - Pig1. Application - Pig
1. Application - Pig
 
[143] Modern C++ 무조건 써야 해?
[143] Modern C++ 무조건 써야 해?[143] Modern C++ 무조건 써야 해?
[143] Modern C++ 무조건 써야 해?
 
Gcd ppt
Gcd pptGcd ppt
Gcd ppt
 
[Pgday.Seoul 2021] 1. 예제로 살펴보는 포스트그레스큐엘의 독특한 SQL
[Pgday.Seoul 2021] 1. 예제로 살펴보는 포스트그레스큐엘의 독특한 SQL[Pgday.Seoul 2021] 1. 예제로 살펴보는 포스트그레스큐엘의 독특한 SQL
[Pgday.Seoul 2021] 1. 예제로 살펴보는 포스트그레스큐엘의 독특한 SQL
 
잘 알려지지 않은 숨은 진주, Winsock API - WSAPoll, Fast Loopback
잘 알려지지 않은 숨은 진주, Winsock API - WSAPoll, Fast Loopback잘 알려지지 않은 숨은 진주, Winsock API - WSAPoll, Fast Loopback
잘 알려지지 않은 숨은 진주, Winsock API - WSAPoll, Fast Loopback
 
[Gpg2권]1.1 c++ 게임의 최적화
[Gpg2권]1.1 c++ 게임의 최적화[Gpg2권]1.1 c++ 게임의 최적화
[Gpg2권]1.1 c++ 게임의 최적화
 
사례를 통해 살펴보는 프로파일링과 최적화 NDC2013
사례를 통해 살펴보는 프로파일링과 최적화 NDC2013사례를 통해 살펴보는 프로파일링과 최적화 NDC2013
사례를 통해 살펴보는 프로파일링과 최적화 NDC2013
 
[Pgday.Seoul 2020] SQL Tuning
[Pgday.Seoul 2020] SQL Tuning[Pgday.Seoul 2020] SQL Tuning
[Pgday.Seoul 2020] SQL Tuning
 
[1B4]안드로이드 동시성_프로그래밍
[1B4]안드로이드 동시성_프로그래밍[1B4]안드로이드 동시성_프로그래밍
[1B4]안드로이드 동시성_프로그래밍
 
[Pgday.Seoul 2017] 8. PostgreSQL 10 새기능 소개 - 김상기
[Pgday.Seoul 2017] 8. PostgreSQL 10 새기능 소개 - 김상기[Pgday.Seoul 2017] 8. PostgreSQL 10 새기능 소개 - 김상기
[Pgday.Seoul 2017] 8. PostgreSQL 10 새기능 소개 - 김상기
 
Startup JavaScript 8 - NPM, Express.JS
Startup JavaScript 8 - NPM, Express.JSStartup JavaScript 8 - NPM, Express.JS
Startup JavaScript 8 - NPM, Express.JS
 
ARTIK 710 IoT class 02
ARTIK 710 IoT class 02ARTIK 710 IoT class 02
ARTIK 710 IoT class 02
 
Learning Node Book, Chapter 5
Learning Node Book, Chapter 5Learning Node Book, Chapter 5
Learning Node Book, Chapter 5
 
Spring Boot 1
Spring Boot 1Spring Boot 1
Spring Boot 1
 
제 5회 Lisp 세미나 - 클로저 개발팀을 위한 지속적인 통합
제 5회 Lisp 세미나 - 클로저 개발팀을 위한 지속적인 통합제 5회 Lisp 세미나 - 클로저 개발팀을 위한 지속적인 통합
제 5회 Lisp 세미나 - 클로저 개발팀을 위한 지속적인 통합
 
[하코사세미나]미리보는 대규모 자바스크립트 어플리케이션 개발
[하코사세미나]미리보는 대규모 자바스크립트 어플리케이션 개발[하코사세미나]미리보는 대규모 자바스크립트 어플리케이션 개발
[하코사세미나]미리보는 대규모 자바스크립트 어플리케이션 개발
 
ES6 for Node.js Study 3주차
ES6 for Node.js Study 3주차ES6 for Node.js Study 3주차
ES6 for Node.js Study 3주차
 
Infiniflux vs influxdb 비교 테스트 결과 2016 12월-v2
Infiniflux vs influxdb 비교 테스트 결과 2016 12월-v2Infiniflux vs influxdb 비교 테스트 결과 2016 12월-v2
Infiniflux vs influxdb 비교 테스트 결과 2016 12월-v2
 
Node.js at OKJSP
Node.js at OKJSPNode.js at OKJSP
Node.js at OKJSP
 

Similar to 12. Application - Python + Pandas

Python 활용: 이미지 처리와 데이터 분석
Python 활용: 이미지 처리와 데이터 분석Python 활용: 이미지 처리와 데이터 분석
Python 활용: 이미지 처리와 데이터 분석용 최
 
파이썬 데이터 분석 3종세트
파이썬 데이터 분석 3종세트파이썬 데이터 분석 3종세트
파이썬 데이터 분석 3종세트itproman35
 
오픈소스로 만드는 DB 모니터링 시스템 (w/graphite+grafana)
오픈소스로 만드는 DB 모니터링 시스템 (w/graphite+grafana)오픈소스로 만드는 DB 모니터링 시스템 (w/graphite+grafana)
오픈소스로 만드는 DB 모니터링 시스템 (w/graphite+grafana)I Goo Lee
 
RUCK 2017 Shiny의 또 다른 활용: RStudio addin 함수 및 패키지의 제작
RUCK 2017 Shiny의 또 다른 활용: RStudio addin 함수 및 패키지의 제작RUCK 2017 Shiny의 또 다른 활용: RStudio addin 함수 및 패키지의 제작
RUCK 2017 Shiny의 또 다른 활용: RStudio addin 함수 및 패키지의 제작r-kor
 
Shiny의 또 다른 활용
Shiny의 또 다른 활용Shiny의 또 다른 활용
Shiny의 또 다른 활용건웅 문
 
스플렁크 머신러닝 연동
스플렁크 머신러닝 연동스플렁크 머신러닝 연동
스플렁크 머신러닝 연동Seung-Woo Kang
 
스플렁크 Machine Learning Integration
스플렁크 Machine Learning Integration스플렁크 Machine Learning Integration
스플렁크 Machine Learning IntegrationTIMEGATE
 
[Week5] Getting started with R
[Week5] Getting started with R[Week5] Getting started with R
[Week5] Getting started with Rneuroassociates
 
Python machine learning Ch.4
Python machine learning Ch.4Python machine learning Ch.4
Python machine learning Ch.4PartPrime
 
파이썬 쪼렙 탈출 1주차
파이썬 쪼렙 탈출 1주차 파이썬 쪼렙 탈출 1주차
파이썬 쪼렙 탈출 1주차 건환 손
 
weather-data-processing-using-python
weather-data-processing-using-pythonweather-data-processing-using-python
weather-data-processing-using-pythonmarc_kth
 
2. Application - Sqoop Import
2. Application - Sqoop Import2. Application - Sqoop Import
2. Application - Sqoop Importmerry7
 
4. Application - Oozie Fork
4. Application - Oozie Fork4. Application - Oozie Fork
4. Application - Oozie Forkmerry7
 
Ndc2011 성능 향상을_위한_데이터베이스_아키텍쳐_구축_및_개발_가이드
Ndc2011 성능 향상을_위한_데이터베이스_아키텍쳐_구축_및_개발_가이드Ndc2011 성능 향상을_위한_데이터베이스_아키텍쳐_구축_및_개발_가이드
Ndc2011 성능 향상을_위한_데이터베이스_아키텍쳐_구축_및_개발_가이드cranbe95
 
From MSSQL to MySQL
From MSSQL to MySQLFrom MSSQL to MySQL
From MSSQL to MySQLI Goo Lee
 

Similar to 12. Application - Python + Pandas (20)

Python 활용: 이미지 처리와 데이터 분석
Python 활용: 이미지 처리와 데이터 분석Python 활용: 이미지 처리와 데이터 분석
Python 활용: 이미지 처리와 데이터 분석
 
파이썬 데이터 분석 3종세트
파이썬 데이터 분석 3종세트파이썬 데이터 분석 3종세트
파이썬 데이터 분석 3종세트
 
Device driver
Device driverDevice driver
Device driver
 
오픈소스로 만드는 DB 모니터링 시스템 (w/graphite+grafana)
오픈소스로 만드는 DB 모니터링 시스템 (w/graphite+grafana)오픈소스로 만드는 DB 모니터링 시스템 (w/graphite+grafana)
오픈소스로 만드는 DB 모니터링 시스템 (w/graphite+grafana)
 
Scala for play
Scala for playScala for play
Scala for play
 
RUCK 2017 Shiny의 또 다른 활용: RStudio addin 함수 및 패키지의 제작
RUCK 2017 Shiny의 또 다른 활용: RStudio addin 함수 및 패키지의 제작RUCK 2017 Shiny의 또 다른 활용: RStudio addin 함수 및 패키지의 제작
RUCK 2017 Shiny의 또 다른 활용: RStudio addin 함수 및 패키지의 제작
 
Shiny의 또 다른 활용
Shiny의 또 다른 활용Shiny의 또 다른 활용
Shiny의 또 다른 활용
 
Python
PythonPython
Python
 
스플렁크 머신러닝 연동
스플렁크 머신러닝 연동스플렁크 머신러닝 연동
스플렁크 머신러닝 연동
 
스플렁크 Machine Learning Integration
스플렁크 Machine Learning Integration스플렁크 Machine Learning Integration
스플렁크 Machine Learning Integration
 
IPython
IPythonIPython
IPython
 
[Week5] Getting started with R
[Week5] Getting started with R[Week5] Getting started with R
[Week5] Getting started with R
 
파이썬으로 익히는 딥러닝
파이썬으로 익히는 딥러닝파이썬으로 익히는 딥러닝
파이썬으로 익히는 딥러닝
 
Python machine learning Ch.4
Python machine learning Ch.4Python machine learning Ch.4
Python machine learning Ch.4
 
파이썬 쪼렙 탈출 1주차
파이썬 쪼렙 탈출 1주차 파이썬 쪼렙 탈출 1주차
파이썬 쪼렙 탈출 1주차
 
weather-data-processing-using-python
weather-data-processing-using-pythonweather-data-processing-using-python
weather-data-processing-using-python
 
2. Application - Sqoop Import
2. Application - Sqoop Import2. Application - Sqoop Import
2. Application - Sqoop Import
 
4. Application - Oozie Fork
4. Application - Oozie Fork4. Application - Oozie Fork
4. Application - Oozie Fork
 
Ndc2011 성능 향상을_위한_데이터베이스_아키텍쳐_구축_및_개발_가이드
Ndc2011 성능 향상을_위한_데이터베이스_아키텍쳐_구축_및_개발_가이드Ndc2011 성능 향상을_위한_데이터베이스_아키텍쳐_구축_및_개발_가이드
Ndc2011 성능 향상을_위한_데이터베이스_아키텍쳐_구축_및_개발_가이드
 
From MSSQL to MySQL
From MSSQL to MySQLFrom MSSQL to MySQL
From MSSQL to MySQL
 

More from merry7

18. Install - Spark Streaming Env.
18. Install - Spark Streaming Env.18. Install - Spark Streaming Env.
18. Install - Spark Streaming Env.merry7
 
17. Application - Nutch + Solr
17. Application - Nutch + Solr17. Application - Nutch + Solr
17. Application - Nutch + Solrmerry7
 
16. Install - Nutch
16. Install - Nutch16. Install - Nutch
16. Install - Nutchmerry7
 
14. Install - Solr
14. Install - Solr14. Install - Solr
14. Install - Solrmerry7
 
11. Application - Phoenix
11. Application - Phoenix11. Application - Phoenix
11. Application - Phoenixmerry7
 
10. Install - Phoenix
10. Install - Phoenix10. Install - Phoenix
10. Install - Phoenixmerry7
 
9. Application - WebHDFS
9. Application - WebHDFS9. Application - WebHDFS
9. Application - WebHDFSmerry7
 
7. Application - Hive Bucket
7. Application - Hive Bucket7. Application - Hive Bucket
7. Application - Hive Bucketmerry7
 
3. Install - Tensorflow
3. Install - Tensorflow3. Install - Tensorflow
3. Install - Tensorflowmerry7
 
6. Application - NiFi
6. Application - NiFi6. Application - NiFi
6. Application - NiFimerry7
 
5. Install - NiFi
5. Install - NiFi5. Install - NiFi
5. Install - NiFimerry7
 

More from merry7 (11)

18. Install - Spark Streaming Env.
18. Install - Spark Streaming Env.18. Install - Spark Streaming Env.
18. Install - Spark Streaming Env.
 
17. Application - Nutch + Solr
17. Application - Nutch + Solr17. Application - Nutch + Solr
17. Application - Nutch + Solr
 
16. Install - Nutch
16. Install - Nutch16. Install - Nutch
16. Install - Nutch
 
14. Install - Solr
14. Install - Solr14. Install - Solr
14. Install - Solr
 
11. Application - Phoenix
11. Application - Phoenix11. Application - Phoenix
11. Application - Phoenix
 
10. Install - Phoenix
10. Install - Phoenix10. Install - Phoenix
10. Install - Phoenix
 
9. Application - WebHDFS
9. Application - WebHDFS9. Application - WebHDFS
9. Application - WebHDFS
 
7. Application - Hive Bucket
7. Application - Hive Bucket7. Application - Hive Bucket
7. Application - Hive Bucket
 
3. Install - Tensorflow
3. Install - Tensorflow3. Install - Tensorflow
3. Install - Tensorflow
 
6. Application - NiFi
6. Application - NiFi6. Application - NiFi
6. Application - NiFi
 
5. Install - NiFi
5. Install - NiFi5. Install - NiFi
5. Install - NiFi
 

12. Application - Python + Pandas

  • 1. 빅데이터 ~ 머신(딥)러닝 실무로 배우는 빅데이터 기술  Python+Pandas 활용 ☆ 확장하기 – 12편 ☆ 김강원
  • 2. 판다스(Pandas) 는? 파이썬 기반으로 쉽고 편리하게 데이터 분석을 지원하는 라이브러리 ※ Pandas의 기본 개념과 기능들은 구글링을 통해 확인 하세요!
  • 3. 파일럿 프로젝트 확장 (1/2) Python & Pandas
  • 4. 책 337 페이지 중에서… (개정판) 데이터 탐색 및 분석 파일럿 프로젝트 확장 (2/2)
  • 5. 확장편 실습 Python + Pandas 홗용 데이터 탐색/분석
  • 6.  탐색/분석 데이터 확보 파일질라(FTP) 실행 > Server02 접속 > 파일 다운로드 - 다운로드 경로: /home/pilot-pjt/mahout-data/classification/input - 다운로드 파일: classification_data.txt - 다운로드 위치: D://data/ Step-1  파이썬 홖경 구성 및 실행 윈도우 시작 메뉴 > Anaconda Prompt 실행 > Activate py35 > conda install seaborn > jupyter notebook Step-2  Jupyter Notebook 생성 Jupyter Home > New > Python 3 실행 Step-3
  • 7.  라이브러리 Import import os.path import pandas as pd import numpy as np import tensorflow as tf import matplotlib.pyplot as plt import matplotlib.gridspec as gridspec import seaborn as sns from sklearn import preprocessing Step-4  분석 데이터 로드 df= pd.read_csv("D://data/classification_dataset.txt", names = ["sex", "age", "marriage", "region", "job", "car_capacity", "car_year", "car_model", "tire_fl", "tire_fr", "tire_bl", "tire_br", "light_fl", "light_fr", "light_bl", "light_br", "engine_s", "break_s", "battery_s", "result"]) df.head() Step-5  미분석 항목 제외 df = df.drop(['sex','age','marriage','region','job','car_model'], axis =1) df.head() Step-6
  • 8.  레이블 변수값 변홖 df.loc[df.result == '비정상', 'result'] = 1 df.loc[df.result == '정상', 'result'] = 0 df.head() Step-7  레이블 변수 탐색 print("# 비정상") print(df.result[df.result ==1].describe()) print("====================================") print("# 정상") print(df.result[df.result ==0].describe()) Step-8  비정상 데이터 탐색 f, ax1 = plt.subplots(1, 1, sharex=True, figsize=(12,4)) ax1.hist(df.car_year[df.result == 1], bins = 50) ax1.set_title('Bad Condition') plt.ylabel('Number of Transactions') plt.show() Step-9
  • 9.  데이터 변홖 – 엔진/브레이크 df.loc[df.engine_s == 'A', 'engine_s'] = 0 df.loc[df.engine_s == 'B', 'engine_s'] = 50 df.loc[df.engine_s == 'C', 'engine_s'] = 100 df.loc[df.break_s == 'A', 'break_s'] = 0 df.loc[df.break_s == 'B', 'break_s'] = 50 df.loc[df.break_s == 'C', 'break_s'] = 100 Step-10  데이터 정규화 dValues = df.values min_max_scaler = preprocessing.MinMaxScaler() dValues_scaled = min_max_scaler.fit_transform(dValues ) df = pd.DataFrame(dValues_scaled , columns = [ "car_capacity", "car_year", "tire_fl", "tire_fr", "tire_bl", "tire_br", "light_fl", "light_fr", "light_bl", "light_br", "engine_s", "break_s", "battery_s", "result"] ) Step-11
  • 10.  영향도 낮은 변수 제외 df = df.drop(['tire_fl','tire_fr','tire_bl','tire_br','light_fl','light_fr','light_bl','light_br'], axis =1) df.head() Step-13  변수(피처)들의 영향도 파악 v_features = df.ix[:,0:13].columns plt.figure(figsize=(12,28*4)) gs = gridspec.GridSpec(28, 1) for i, cn in enumerate(df[v_features]): ax = plt.subplot(gs[i]) sns.distplot(df[cn][df.result == 1], bins=50, color='red') sns.distplot(df[cn][df.result == 0], bins=50 ) ax.set_xlabel('') ax.set_title('histogram of feature: ' + str(cn)) plt.show() Step-12  프로그램 저장 File > Rename > “12.Python&Pandas 활용” Step-14
  • 11. 실무로 배우는 빅데이터 기술 확장하기 12편 – Python+Pandas 홗용 [ 강의자료 ]  동 영 상: 유튜브 www.youtube.com  실습문서: 슬라이드쉐어 www.slideshare.net