작심3일 챌린지/코드잇

[5일차] 1일 1코드잇 챌린지 :: 데이터 사이언스 시작하기!

누Ring 2024. 1. 29.

금요일...절반 듣다가 약속이 있어서 오늘이 되서야 하는 데이터 사이언스 시작하기 챕터!!

금요일날 들은 저 부분까지는 모두 쥬피터 노트북 설치하기 이런 거였는데

내 컴은 뭐가 문제인건지 예전에 잘 썼던 쥬피터가 갑자기 실행이 안되기 시작;;

나중에..시간되면 파일 다 삭제하고 다시 강의대로 천천히 깔아야겠다 ㅠㅠ

 

 

1-1 numpy

  1. numpy의 사용

기능 예시 코드 결과 값
정의 import numpy
array1=numpy.array([1,2,3,4,5,6,7,8,9])
array1
array([1, 2, 3, 4, 5, 6, 7, 8, 9])
출력
numpy array 리턴
import numpy
array1=numpy.array([1,2,3,4,5,6,7,8,9])

print(array1)
[1 2 3 4 5 6 7 8 9]
타입 import numpy
array1=numpy.array([1,2,3,4,5,6,7,8,9])
type(array1)
numpy.ndarray
  import numpy
array1=numpy.array([1,2,3,4,5,6,7,8,9])
array1.shape
(9, )
array 출력 import numpy
array2=numpy.array([[1,2,3],[4,5,6],[7,8,9]])
array2
array([[1, 2, 3],
        [4, 5, 6],
        [7, 8, 9]])
타입 확인 import numpy
array2=numpy.array([[1,2,3],[4,5,6],[7,8,9]])
type(array2)
numpy.ndarray
행렬 확인 import numpy
array2=numpy.array([[1,2,3,4],[4,5,6,7],[7,8,9,10]])
array2.shape
(3, 4)

 

 

...까지 듣다가 맞이한 503 에러..................

서버가 터져서 사이트를 못들어가니

문의고 뭐고 못함..고객센터 연락처도 볼수없음....암울......

대략 30분후... 복구완 ^~^ 

사이퍼즈 한판이네 ㅎㅎㅎㅎ

 

2. numpy의 주요 함수

함수 코드 결과
numpy.full(횟수,값) import numpy
array1 = numpy.full(3,9)
print(array1)
[9 9 9]
numpy.zeros(갯수,dtype=int) import numpy
array2 = numpy.zeros(4,dtype=int)

print(array2)
[0 0 0 0]
numpy.ones(갯수, dtype=int) import numpy
array3 = numpy.ones(5,dtype=int)

print(array3)
[1 1 1 1 1]
numpy.random.random(갯수) import numpy
array4 = numpy.random.random(5)

print(array4)
[0.42214929 0.45275673 0.57978413 0.61417065 0.39448558]
numpy.arange(m-1) import numpy
array5 = numpy.arange(5)

print(array5)
[0 1 2 3 4]
numpy.arange(시작값,m-1) import numpy
array6 = numpy.arange(3,8)

print(array6)
[3 4 5 6 7]
numpy.arrange(시작값,m-1, 간격) import numpy
array7 = numpy.arange(1,8,2)

print(array7)
[1 3 5 7]

 

3. numpy 의 인덱싱과 슬라이싱

구분 코드 결과 값
숫자로의 인덱싱 import numpy as np
array1=np.array([10, 11, 12, 13, 14, 15, 16, 17, 18])

array1[0]
10

  import numpy as np
array1= np.array9[10, 11, 12, 13, 14, 15, 16, 17, 18])

array1[3]
13
  import numpy as np
array1= np.array([10, 11, 12, 13, 14, 15, 16, 17, 18])

array1[-1]
18
  import numpy as np
array1= np.array([10, 11, 12, 13, 14, 15, 16, 17, 18])

array1[-2]
17
리스트로의 인덱싱 import numpy as np
array1= np.array([10, 11, 12, 13, 14, 15, 16, 17, 18])

array1[[0, 3, 7]]
array([10, 13, 17])
  import numpy as np
array1= np.array([10, 11, 12, 13, 14, 15, 16, 17, 18])
array2=np.array([0, 5, 2])

array1[array2]

array([10, 15, 12])
슬라이싱 import numpy as np
array1= np.array([10, 11, 12, 13, 14, 15, 16, 17, 18])

array1[2:5]
array([12, 13, 14])
  import numpy as np
array1= np.array([10, 11, 12, 13, 14, 15, 16, 17, 18])

array1[:5]
array([10, 11, 12, 13, 14])
  import numpy as np
array1= np.array([10, 11, 12, 13, 14, 15, 16, 17, 18])

array1[5:]
array([15, 16, 17, 18])
array1[시작,m-1끝, n개씩 건너뛰기] import numpy as np
array1= np.array([10, 11, 12, 13, 14, 15, 16, 17, 18])

array1[1:5:2]
array([11,13]) #1번 인덱스, 3번 인덱스

 

4. numpy 기본 연산

기능 코드 결과 값
  import numpy as np
array1=np.arange(10)
array1
array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
곱 연산 import numpy as np
array1=np.arange(10)

array1 * 2
array([0, 2, 4, 6, 8, 10, 12,14, 16, 18])
나누기 연산 import numpy as np
array1=np.arange(10)

array1/2
array([0. , 0.5 , 1. , 1.5 , 2, 2.5, 3. ,3.5 , 4. , 4.5])
덧셈 연산 import numpy as np
array1=np.arange(10)

array1-1
array([-1, 0, 1, 2, 3, 4, 5, 6, 7, 8])
뺄셈 연산 import numpy as np
array1=np.arange(10)

array1+2
array([2, 3, 4, 5, 6, 7, 8, 9, 10, 11])
제곱 연산 import numpy as np
array1=np.arange(10)

array1 ** 2
array([0, 1, 4, 9, 16, 25, 36, 49, 64, 81])
두 numpy array 의 연산 import numpy as np
array1=np.arange(10)
array2=np.arange(10,20)

array1 + array2
array([10, 13, 14, 16, 18, 20, 22, 24, 26, 28])
boolean 연산 import numpy as np
array1=np.arange(10)

array1>5
array([False, False, False, False, False, False, True, True, True, True], dtype=bool)
  import numpy as np
array1= np.array([True, True, False, False, True, False])

np.where(array1)
(array([0, 1, 4]),)
  import numpy as np
array1=np.arange(10)
filter = np.where(array1>4)

array1[filter]
array([5, 6, 7, 8, 9])

 

5. numpy 와 python List (import ~ 생략)

Numpy Array Python List
numpy.array([1, 2, 3, 4]) + numpy.array([1, 2, 3, 4])

연산 결과: array([2, 4, 6, 8])
list1=[1, 2, 3, 4]
list2=[1, 2, 3, 4]

list1+list2연산 결과: [1, 2, 3, 4, 1, 2, 3, 4]
뺄셈, 곱셈, 나눗셈 위와 동일하게 동작 오류
numpy.array([1, 2, 3, 4]) + 5

연산결과: array([6, 7, 8, 9])
오류
numpy.array([1, 2, 3, 4]) * 3
연산 결과: array([3, 6, 9, 12])
list1=[1, 2, 3, 4]
list1*3 연산 결과: [1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4]
한 어레이에는 같은 자료형만 저장 한 리스트에 다양한 자료형 저장

6. numpy로 기본 통계

기능 코드 결과값
최댓값 import numpy as np

array1=np.array([5, 2, 3, 4, 1])
print(array1.max())
5
최솟값 import numpy as np

array1=np.array([5, 2, 3, 4, 1])
print(array1.min())
1
평균값 import numpy as np

array1=np.array([5, 2, 3, 4, 1])
print(array1.mean())
3.0
중앙값 import numpy as np

array1=np.array([5, 2, 3, 4, 1])
print(np.median(array1))
3.0
표준편차 import numpy as np

array1=np.array([5, 2, 3, 4, 1])
print(array1.std())
1.41421356237
분산 import numpy as np

array1=np.array([5, 2, 3, 4, 1])
print(array1.var())
2.0

 

2-2 pandas란

1. pandans

     Column: 데이터의 특징(ex. 키, 나이 ...)

     Row: 레코드 (2Row, 이름: 누Ring, 나이: 20살, 키: 170 ...)

     numpy와 다른 점: (0,0) 과 같이 숫자로 찾는 것이 아닌 (누Ring, 키) 와 같은 값으로 검색 가능

                                   다양한 자료형을 사용 가능

2. pandans 의 사용

기능 코드 결과 값
  import pandas as pd

two_dimensional_list=[['A',10, 20], ['B',42,37], ['C',53,11]]
my_df=pd.DataFrame( two_dimensional_list)

my_df
  import pandas as pd

two_dimensional_list=[['A',10, 20], ['B',42,37], ['C',53,11]]
my_df=pd.DataFrame( two_dimensional_list)

type(my_df)
pandas.core.frame.DataFrame
  import pandas as pd

two_dimensional_list=[['A',10, 20], ['B',42,37], ['C',53,11]]
my_df=pd.DataFrame( two_dimensional_list, columns=['Name','EngScore','MathScore'], index=['a','b','c'])

my_df
  import pandas as pd

two_dimensional_list=[['A',10, 20], ['B',42,37], ['C',53,11]]
my_df=pd.DataFrame( two_dimensional_list, columns=['Name','EngScore','MathScore'], index=['a','b','c'])

my_df.columns
Index(['Name', 'EngScore', 'MathScore', dtype='object'])
  import pandas as pd

two_dimensional_list=[['A',10, 20], ['B',42,37], ['C',53,11]]
my_df=pd.DataFrame( two_dimensional_list, columns=['Name','EngScore','MathScore'], index=['a','b','c'])

my_df.index
Index(['a','b','c', dtype='object'])
  import pandas as pd

two_dimensional_list=[['A',10, 20], ['B',42,37], ['C',53,11]]
my_df=pd.DataFrame( two_dimensional_list, columns=['Name','EngScore','MathScore'], index=['a','b','c'])

my_df.dtypes
Name         object
EngScore      int64
MathScore     int 64
dtype:  object

댓글