일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 오피스
- 깃
- 엑셀
- python
- VBA
- 윈도우11
- Outlook
- Excel
- win32com
- 아웃룩
- office
- matlab
- pyqt5
- pythongui
- pandas
- 파이썬
- Windows11
- Android
- 파워포인트
- Windows10
- 윈도우10
- 비주얼베이직
- 문자열
- 파이썬GUI
- 파이썬3
- windows
- git
- html
- 안드로이드
- python3
Appia의 IT세상
파이썬[Python] 055 수의 범위을 바탕으로 배열을 생성하는 방법(arrange, linspace, logspace) - Numpy008 본문
파이썬[Python] 055 수의 범위을 바탕으로 배열을 생성하는 방법(arrange, linspace, logspace) - Numpy008
Appia 2020. 3. 3. 08:12이번 포스팅을 수의 범위를 바탕으로 배열을 생성하는 방법에 대해서 이야기를 드리고자 합니다. 파이썬[Python]의 넘파이(Numpy)는 배열이 중심이다 보니, 자연스럽게 배열에 관련된 이야기를 할 수 밖에 없습니다. 그 중에 이 부분은 나름 유용하게 사용될 수 있는 부분이기 때문에 포스팅 드리고자 합니다. 크게 3가지 함수 arrange, linspace, logspace를 바탕으로 이야기를 하고자 합니다.
numpy.arrange
가장 쉬우면서 가장 보편적으로 많이 사용하는 함수가 아닐까 합니다. 시작값, 종료 값, 각 스텝의 차이등을 이용하여 나타내는 방식입니다. 다음 형식을 보겠습니다.
numpy.arange(start, stop, step, dtype)
start - 시작값, 만약 입력이 없다면 0으로 시작합니다.
stop - 범위의 끝, stop 값은 포함 되지 않습니다.
steop - 값들 사이의 범위 값, 기본 값은 1입니다.
dtype - 생성된 배열에 데이터 타입, 입력하지 않으면, 입력하시는 값의 데이터 타입을 사용합니다.
다음 예제를 살펴보겠습니다.
1 2 3 | import numpy x = numpy.arange(10,20,2) print(x) | cs |
위의 예제를 실행하면 다음과 같은 결과가 나옵니다.
1 | [10 12 14 16 18] | cs |
numpy.linspace
이 함수는 위의 numpy.arrange와 비슷하나, step 대신 배열에 생성될 맴버의 갯수로 각 값의 편차로 배열을 생성해줍니다.
numpy.linspace(start, stop, num, endpoint, retstep, dtype)
start - 시작 값입니다.
stop - 값의 마지막 값입니다. 단, endpoint가 True이면 포함되고, False이면 포함되지 않습니다.
num - 배열 맴버의 개수입니다. 기본 값은 50입니다.
endpoint - stop 값을 포함 여부를 확인하는 것입니다. True - 포함, Fasle -미포함
restep - True, 배열과 스텝값 추출됩니다.
dtype - 배열의 데이터 타입 입니다.
다음 예제를 살펴보겠습니다.
1
2
3
|
import numpy
x = numpy.linspace(10,20, 5, endpoint = False)
print(x)
|
cs |
위의 예제를 실행하면 다음과 같은 결과가 나옵니다.
1
|
[10. 12. 14. 16. 18.]
|
cs |
그럼 restep를 사용한 예제를 살펴보겠습니다.
1
2
3
|
import numpy
x = numpy.linspace(1,2,5, retstep = True)
print(x)
|
cs |
다음과 같은 결과가 나옴을 확인할 수 있습니다. retstep을 이용하여 배열과 step값을 별도로 추출하였습니다.
1
|
(array([1. , 1.25, 1.5 , 1.75, 2. ]), 0.25)
|
cs |
numpy.logspace
이름 그대로 로그 스케일 값으로 배열을 만드는 함수입니다. 개인적으로 수학을 썩 좋아하지는 않지만, 은근 로그 스케일 계산해야하는 경우도 있고 합니다. 관련된 부분입니다.
numpy.logspace(start, stop, num, endpoint, base, dtype)
start - 시작 값입니다.
stop - 값의 마지막 값입니다. 단, endpoint가 True이면 포함되고, False이면 포함되지 않습니다.
num - 배열 맴버의 개수입니다. 기본 값은 50입니다.
endpoint - stop 값을 포함 여부를 확인하는 것입니다. True - 포함, Fasle -미포함
base - Log 값의 베이스 값입니다. 미입력시 기본값 10으로 설정됩니다.
dtype - 배열의 데이터 타입 입니다.
그럼 예제를 살펴보겠습니다.
1
2
3
|
import numpy
x = numpy.logspace(1,10,num = 10, base = 2)
print(x)
|
cs |
2를 베이스를 하는 로그 스페이스를 바탕으로 한 배열을 다음과 같이 생성해줍니다.
1
|
[ 2. 4. 8. 16. 32. 64. 128. 256. 512. 1024.]
|
cs |
오늘은 3가지 함수를 이용하여 수의 범위를 활용한 배열 생성하는 방법에 대해서 살펴봤습니다. 이 방법이 매우 유용하게 사용될 수 있다고 생각합니다. 혹 궁금하시거나 문의 사항 있으시면 언제든지 댓글 및 방명록에 글 부탁드립니다.
'Python > Python Numpy' 카테고리의 다른 글
파이썬[Python] 057 배열 연산 기본 연산 (sum,add,mod,extract,multiply,power,reciprocal)- Numpy010 (0) | 2020.03.05 |
---|---|
파이썬[Python] 056 배열 인덱싱(Indexing)과 슬라이싱(slicing) - Numpy009 (0) | 2020.03.04 |
파이썬[Python] 054 바이너리(binary) 읽기(frombuffer), 쓰기(tobytes) - Numpy007 (0) | 2020.03.02 |
파이썬[Python] 053 기존 데이터를 이용한 Ndarray생성(asarray, fromiter) - Numpy006 (0) | 2020.03.01 |
파이썬[Python] 052 Ndarray 속성 - Numpy005 (0) | 2020.02.29 |