15pg 넘파이 기반 데이터타입 ndarray의 특징:
- 다차원(multi-dimension) 배열을 생성, 연산 수행 가능
- ndarray 배열의 shape변수는 ndarry의 크기(행, 열의 수)를 튜플 형태로 가지고있음.
결과값
- ndarray 데이터타입에서 각각의 데이터 요소는 공백으로 구분한다. (list 데이터 타입에서 데이터를 구분하는 쉼표와 다름)
ndarray 데이터타입에 있는 1, 2, 3데이터는 int32는 32비트의 공간하나에 들어있는 1 2 3 이라는 것으로 바뀐다. 일반 int값에 비해 데이터 크기가 줄어들고 좀 더 데이터가 심플해진다.
아래 파이썬에서 각각의 int 변수는 하나의 객체로 위의 ndarray 데이터타입의 int와는 다르다.
다음 데이터 타입을 보자. 리스트 안에 하나의 스트링이 있다면 ndarray데이터 타입은 string, 즉 U11으로 바뀐다.
ndarray 데이터타입은 파이썬의 list 데이터타입과 달리 서로다른 데이터타입을 가질 수 없다. (ndarray는 동일한 데이터타입을 가지고 있어야함)
string타입은 정수형으로 바뀔 수 없으므로 정수형이 string타입으로 바뀌게 된다. 또한 소수점도 정수로 표기하는 것보다 정수를 소수점 float형태로 표기할 수 있으므로 list3도 float타입으로 바뀐다.
데이터타입의 변경
Ex) 소수점을 int로 바꾸는 법 >> 소수점을 절삭한다
zeros함수: 어떤 shape의 데이터를 0으로 채워서 만든다. 만약 두번 째와 같이 int32 등의 타입을 설정하지 않으면 float형태가 기본으로 설정된다.
reshape함수: ndarray의 차원과 크기 변경 (value값은 그대로)
왼쪽>오른쪽 순서대로 데이터가 출력된다.
-1를 인자로 설정하고 뒷자리를 5로 정하면 앞자리는 자동적으로 2가 오게 된다.
만약 reshape할 때 행렬의 숫자가 맞지 않으면 에러가 뜬다.
데이터의 차원변환
2,2,2는 2x2행렬이 2판있다는 의미이다.
29pg 인덱스슬라이싱
list와는 달리 넘파이는 행렬의 차원(shape)이 다양하게 있어서 인덱스 슬라이싱할 때 조금 다르다.
예를 들어 2차원 ndarray에서 인덱싱을 하려면 array2d[0:2, 0:2]와 같다.
37pg 행렬곱
2x3 과 3x2 행렬의 결과는 2x2행렬이 된다.
첫번째 row와 첫번째 column을 곱해서 더한다.
첫번째 row와 두번째 column을 곱해서 더한다.
두번째 row와 첫번째 column을 곱해서 더한다.
두번째 row와 두번째 column을 곱해서 더한다.
'살콤아내 자기계발 > 파이썬' 카테고리의 다른 글
파이썬 머신러닝 완벽가이드 1주차 정리 (판다스 60pg~, 타이타닉 실습) (0) | 2021.04.23 |
---|---|
파이썬 머신러닝 완벽가이드 1주차 정리 (판다스 39pg~), 타이타닉 실습 (0) | 2021.04.22 |
점프투파이썬 3주차 실습_서로 유사한 모양(인구분포)의 그래프를 가진 동을 찾아라 (0) | 2021.04.20 |
점프투파이썬 3주차 실습_시간별 승하차인원 (0) | 2021.04.20 |
점프투파이썬 3주차 정리 (0) | 2021.04.16 |