아린// 2021. 2. 18. 23:06

1. csv파일 읽기 

 

1) csv파일 불러오는 방법

 - ★ jupiter computer을 실행시킬 폴더에 넣어주기! 꼭!

 - 텍스트에 내가 원하는 쉼표 데이터를 넣고, .csv로 저장해야지 변환됨 

 - 즉, csv파일이 있는 곳에 jupiter computer 실행하기 

 

2) csv파일이란? 

  - 쉼표를 기준으로 항목을 구분하여 저장한 데이터

  - 엑셀 파일로 편집을 할 수 있음

  - 데이터베이스나 표 계산 소프트웨어 데이터를 보존하기 위해 형식

  수학 과학
0 75 60
1 30 85
2 50 55
3 85 70
4 45 60

① import pandas as pd ← pandas 모듈을 pd로 불러오겠음

 

② dat = pd.read_csv('score.csv', encoding='UTF-8')

    ← csv파일을 불러오겠음. 처음은 파일명, 뒤에는 한국어로 쓰인 데이터를 읽어들이기 위해 유니코드를 변환하는 것

    dat.head( ) ← 내용을 확인해라 

 

 

 

2. 평균값, 중앙값, 최빈값

 

1) 평균값

>>> (1+2+3+4+5) / 5 #1~5까지의 평균을 구하는 공식
3.0 #평균

>>> (1+2+1+2+9) / 5 #1,2,1,2,9의 평균을 구하는 공식
3.0 #평균값

 

2) 평균값, 중앙값, 최빈값

import pands as pd #csv파일을 불러오기 위해 pandas 모듈을 pd로 불러오겠음
import numpy as np #numpy함수를 np로 불러오겠음

dat = pd.read_csv('score.csv', encoding='UTF-8) #데이터를 불러와라

print('평균값', np.mean(dat['수학'])) #데이터에서 평균값을 구하라
print('중앙값', np.median(dat['수학'])) #데이터에서 중앙값을 구하라

bincnt = np.bincount(dat['수학']) #같은 값의 개수를 세라
mode = np.argmax(bincnt) #bincnt에 있는 값 중에 가장 큰 값을 꺼내라 
print('최빈치', mode) #그 값을 나타내라 

 

 

 

3. 도수분포표

계급(점수) 도수(인원수)
0~9 0
10~19 1
20~29 2
30~39 3
40~49 4
50~59 5
60~69 3
70~79 1
80~89 5
90~100 16
%matloplib inline #jupiter computer 시작 명령문 
import matplotlib.pyplot as plt #pyplot을 plt로 불러오겠음
import pandas as pd #pandas를 pd로 불러오겠음 

dat = pd.read_csv('score_csv', encoding='UTF-8') #csv 데이터를 불러오겠음 

hist = [0]*10 #for 반복문, 도수(요소 수 10개를 0으로 초기화한다(?)
for dat in dat['수학']:
  if dat < 10:  hist[0] += 1
  elif dat < 20: hist[1] += 1
  elif dat < 30: hist[2] += 1
  elif dat < 40: hist[3] += 1
  elif dat < 50: hist[4] += 1
  elif dat < 60: hist[5] += 1
  elif dat < 70: hist[6] += 1
  elif dat < 80: hist[7] += 1
  elif dat < 90: hist[8] += 1
  elif dat < 100: hist[9] += 1 #데이터가 10보다 작을 때 hist[0]에 1을 더하는 방식
print('도수:', hist)

# 도수분포도
x = list(range(1,11)) #x축에 해당하는 값 
labels = ['0~', '10~', '20~', '30~', '40~', '50~', '60~', '70~', '80~', '90~'] #x축 눈금 레이블

plt.bar(x, hist, tick_label = labels, width=1)

plt.show #막대 그래프를 그려라