본문 바로가기

Python/Build setting14

[Numpy]indexing(boolean indexing, fancy indexing) 앞서 포스팅했던 indexing은 여러 형태의 indexing이 있다. 이번 포스팅에서는 boolean indexing과 fancy indexing을 포스팅하고자한다. boolean indexing 먼저, bool 자료형은 참(True)과 거짓(False)을 나타내는 자료형으로서 아래와 같은 2가지의 값만을 가진다. True - 참 False - 거짓 처음 보면 이게 뭐야 하면서 개념이 쉬우면서 이해가 안되기도 하지만 간단하게 bool 내장 함수를 사용하면 자료형의 참과 거짓을 식별할 수 있다. 맞으면 참(true), 틀리면 거짓(false) 인 것이다. c = np.arange(24).reshape(2,3,4) print(c) print(c.shape) # 출력 [[[ 0 1 2 3] [ 4 5 6 7.. 2022. 8. 29.
[Numpy]넘파이 indexing과 slicing의 차이 indexing과 slicing은 numpy를 활용하여 원하는 값을 호출한다는 개념은 동일하다. indexing과 slicing의 기본 문법 a = np.arange(10) # indexing print(a[5]) # slicing print(a[5:8]) # 출력 5 [5 6 7] 생성된 numpy array 내에 원하는 배열을 추출하기 위해서 indexing은 배열의 index 상 숫자를 넣고 원하는 값을 추출한다. slicing은 콜론 ( : )을 사용해서 [a:b] 내에 a와 b에 원하는 인덱스를 적용하고 a 이상, b미만의 인덱스에 해당하는 값을 추출한다. 그렇다면 이 둘의 차이점은 불러오는 코드만일까. 그건 아니다. 위 코드의 출력결과를 보면, indexing을 사용하면 불러온 결과는 기존 1.. 2022. 8. 29.
[Numpy]넘파이 배열 생성(dtype, astype) 자료 구조를 보다보면 데이터타입을 계속 확인하는 것이 기본이 된다. 가끔 데이터 전처리를 하다보면 에러가 생기는데 많은 확률로 dtype이 맞지 않아서 그런 경우가 있기 때문! numpy array의 dtype은 따로 지정하지 않을 경우 default 로 int형(문자)으로 지정이 된다. # 기본형, 지정형(float, int) a = np.array([1, 2, 3]) b = np.array([1, 2, 3], dtype=np.float64) c = np.array([1, 2, 3], dtype=np.int32) # 출력(dtype) int64 float64 int32 그러나 지정하고 싶은 경우 혹은 dtype을 변경하고 싶은 경우에는 아래의 코드를 참고하자. # float 형 i = np.array(.. 2022. 8. 24.
[Numpy]넘파이 배열 생성(eye, identity) 항등행렬(주대각선의 원소가 모두 1이며 나머지 원소는 모두 0인 정사각 행렬) 또한 numpy 함수를 사용해 생성할 수 있다. identity matrix(항등행렬) 의 철자를 따와서 쉽게 생성이 가능한데 np.identity(행렬의 shape) 을 지정하면 된다. i = np.eye(3) j = np.identity(3) # 출력 [[1. 0. 0.] [0. 1. 0.] [0. 0. 1.]] [[1. 0. 0.] [0. 1. 0.] [0. 0. 1.]] 2022. 8. 24.