일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 기계학습
- python
- 머신러닝
- cpp
- 넘파이
- 합성곱 신경망
- 자바
- 넘파이 기초
- ack
- 코테
- 코딩테스트실력진단
- 디자인 패턴
- 네트워크 기초
- c++
- 데이터 마이닝
- 차원축소
- 클러스터링
- numpy 기초
- java
- 넘파이 배열
- Machine Learning
- 코딩테스트
- lambda
- NumPy
- 파이썬
- 데이터 분석
- cpp class
- Design Pattern
- OOP
- 코드트리
- Today
- Total
준비하는 대학생
[python] Numpy 기초 지식 공부(arange, linspace) 본문
넘파이 자동완성 함수
list에 있는 range() 함수처럼 넘파이에서도 특정구간의 숫자 배열을 생성하는 함수가 존재한다.
대표적으로 arange 와 linspace 함수가 존재하는데 arrange함수부터 알아보자.
Arange 함수
arange 함수는 아래와 같은 구문을 따른다.
numpy.arange([start, ]stop, [step, ]dtype=None)
- start: 선택적 인자이며, 생성할 배열의 시작 값 (기본값: 0)
- stop: 생성할 배열의 끝 값 (이 값은 배열에 포함되지 않는다.)
- step: 선택적 인자이며, 생성할 배열의 값 간격 (기본값: 1)
- dtype: 선택적 인자이며, 생성할 배열의 데이터 타입 (기본값: None, NumPy는 데이터 타입을 자동으로 결정한다.)
예를 들어, 0부터 9까지의 정수 배열을 생성하려면 다음과 같이 arrange() 함수를 호출할 수 있다.
import numpy as np
my_array = np.arange(0, 10)
print(my_array) # [0 1 2 3 4 5 6 7 8 9]
arange() 함수는 시작 값, 끝 값, 간격을 지정하여 다양한 배열을 생성할 수 있다.
또한, arange() 함수는 부동 소수점 타입으로 배열을 생성할 수도 있다.
예를 들어, 0.1부터 1까지의 부동 소수점 타입의 배열을 생성하려면 다음과 같이 dtype 인자를 지정할 수 있다.
my_array = np.arange(0.1, 1, 0.1, dtype=np.float64)
print(my_array) # [0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9]
이처럼 NumPy의 arange() 함수는 지정된 범위 내에서 일정한 간격으로 배열을 생성한다.
Linspace
linspace() 함수의 구문은 다음과 같다.
numpy.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None)
- start: 시작값
- stop: 끝값
- num: 선택적인자이며, 생성할 데이터 개수 (기본값: 50)
- endpoint: 선택적인자이며, 마지막 값이 번뮈에 포함되는지 여부 (기본값: True)
- restep: 선택적인자이며, 간격을 반환할지 여부 (기본값: False)
- dtype: 선택적 인자이며, 생성될 배열의 데이터 타입 (기본값: None)
예를 들어, 0부터 10까지의 범위에서 5개의 데이터를 생성하고 싶다면, 다음과 같이 linspace() 함수를 사용할 수 있다.
import numpy as np
my_array = np.linspace(0, 10, num=5)
print(my_array) # [ 0. 2.5 5. 7.5 10. ]
이 경우, linspace() 함수는 0부터 10까지의 범위에서 5개의 데이터를 생성하며, 이 데이터들은 균등한 간격으로 배치된다. retstep 인자를 True로 설정하면, 생성된 간격도 함께 반환된다. ( 위 예에서는 2.5가 반환될 것이다.)
my_array, step = np.linspace(0, 10, num=5, retstep=True)
print(my_array) # [ 0. 2.5 5. 7.5 10. ] print(step) # 2.5
NumPy 라이브러리의 linspace() 함수는 지정된 범위 내에서 균등하게 간격을 두고 원하는 개수만큼의 데이터를 생성하여 배열로 반환한다. 즉, arange() 함수와 비슷한 기능을 하지만, 두 값 사이의 간격을 명시적으로 지정하는 대신 생성할 데이터의 개수를 지정한다.
'Programming > Machine learning' 카테고리의 다른 글
[NumPy] unique 함수 (0) | 2023.03.14 |
---|---|
[NumPy] 인덱싱 (2) | 2023.03.13 |
[NumPy] reshape 함수 (0) | 2023.03.13 |
[python] Numpy 기초 공부(zeros, ones, full) (0) | 2023.03.08 |
[python] Numpy 기초 지식 공부(데이터 타입 확인 및 변경) (0) | 2023.03.06 |