티스토리 뷰
Numpy
Numeric Python
Numpy는 리스트로 다룰수 없는 다차원 배열이나 행렬등을 손쉽게 처리할 수 있도록 해주는 라이브러리로, 선형대수적인 연산을 할때 유용하게 사용되는 패키지다.
특징
- Numpy의 array는 같은 타입의 데이터만 가질 수 있다(type coercion)
- 일반적인 연산들은 파이썬 리스트와 Numpy array에서 다르게 동작한다. Numpy의 array는 일종의 벡터로 생각하는 편이 좋은데 예를 들어 리스트 간의 합은 리스트의 확장이 결과가 되지만, np.array에서는 각 요소의 값이 더해진 것이 그 결과가 된다. 또한 벡터의 내적이나 벡터의 길이 등을 구하는 연산도 제공한다.
설치방법
- pip3 install numpy
- 보통 임포트할땐 import numpy as np 로 많이 쓰는 것 같다.
예시
키의 배열과 무게의 배열이 있을때 이를 통해서 bmi를 추출해내고 싶어한다고 하자.
(일반적인 파이썬이라면 무게배열/키의배열 ** 2 의 연산을 허용하지 않는다. 파이썬에서 리스트와 인트의 곱셈은 타입이 맞지 않아 허용되지 않는 연산이기 때문이다.)
하지만, Numpy array를 사용해 배열을 만들고 똑같은 연산을 한다면 bmi의 배열이 만들어진다.
예제
height = [1.65, 1.74, 1.89, 1.57]
weight = [56, 60, 75, 54]
weight / height ** 2
--> TypeError : list 와 int를 계산할 수 없다
단점
numpy array는 파이썬 리스트와 달리 다양한 유형의 데이터를 저장할 수 없다
각 연산들이 파이썬 리스트에서랑 다르게 동작해서 혼란이 있을 수 있다.
그래도 subset은 똑같이 동작함 : subset : 리스트의 인덱스로 요소를 추출해내는 것
2차원 numpy 배열
np,array(l (ist of list) ) 의 형태로 생성할 수 있다.
attribute
shape: 총 몇행몇열인지를 보여줌
여기에서 : 는 slice를 의미하는데 모든 row를 포함한다는 뜻이다.
행렬할때 row 와 column 위치를 조심하자. array[row][column] 이다. (아무 생각없이 잘 쓰고 있었던 것 같은데 새삼 혼돈이 온다...)
'Programming > Data' 카테고리의 다른 글
PySpark : 2. Spark Dataframe Basics 1, 2 (0) | 2024.02.01 |
---|---|
PySpark : 1. Hadoop, Mapreduce, Spark (0) | 2024.01.28 |
Kaggle - Intro to Machine Learning (0) | 2020.02.24 |
Datacamp SQL Fundamentals <1> (0) | 2019.09.24 |
- Total
- Today
- Yesterday
- SRE를위한시스템설계와구축
- 동남아
- askcompany
- 파고다후기
- 개발자리뷰어
- 나는리뷰어다
- 혼자공부하는얄팍한코딩지식
- 리액트와함께장고시작하기
- 유데미강의
- 다시미분적분
- Python
- 나는리뷰어다2022
- Docker
- 머신러닝파워드애플리케이션
- django
- udemy
- 아토믹코틀린
- 한빛미디어
- 길벗출판사
- 그래프QL인액션
- BookDiscussion
- 싱가포르
- 파고다갓생후기챌린지
- SQL기초구문
- 싱가폴여행
- 한빛출판사
- 파고다강남후기
- 해외여행
- 싱가폴
- Singapore
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |