티스토리 뷰
반응형
In [534]:
import numpy as np
In [535]:
test_array = np.array([1,4,5,8], float)
print(test_array)
print(type(test_array))
print(type(test_array[3]))
In [536]:
print(test_array.dtype)
print(test_array.shape)
print(test_array.ndim)
print(test_array.size)
print(test_array.nbytes)
In [537]:
matrix = [ [1,2,5,8], [1,2,5,8], [1,2,5,8]]
np.array(matrix, int).dtype
Out[537]:
In [538]:
test_matrix = [ [1,2,3,4], [1,2,5,8]]
np.array(test_matrix).shape
Out[538]:
In [539]:
np.array(test_matrix).reshape(8,)
Out[539]:
In [540]:
np.array(test_matrix).reshape(8,).shape
Out[540]:
In [541]:
np.array(test_matrix).reshape(-1,2).shape
Out[541]:
In [542]:
test_matrix = [[ [1,2,3,4], [1,2,5,8]], [ [1,2,3,4], [1,2,5,8]]]
np.array(test_matrix).flatten()
Out[542]:
In [543]:
test_matrix = np.array([ [1,2,3,4], [1,2,5,8]], dtype =int)
test_matrix
Out[543]:
In [544]:
test_matrix[0][0]
Out[544]:
In [545]:
test_matrix[0,0]
Out[545]:
In [546]:
test_matrix[0,0] = 12 #matrix 0,0 에 12 할당
test_matrix
Out[546]:
In [547]:
a = np.array([[1,2,3,4,5], [6,7,8,9,10]], int)
a
Out[547]:
In [548]:
print(a[:,2:]) # 전체 Row 의 2열 이상
print("\n")
print(a[1:,1:3]) # 1 Row 의 1열-2열
print("\n")
print(a[1:3]) #1Row ~ 2Row 의 전체
In [549]:
np.arange(30)
Out[549]:
In [550]:
np.arange(0,5,0.5) #시작, 끝, Step
Out[550]:
In [551]:
np.zeros(shape=(3,2), dtype=np.int8)
Out[551]:
In [552]:
np.ones(shape=(3,2), dtype=np.int8)
Out[552]:
In [553]:
np.empty(shape=(3,2), dtype=np.int8)
Out[553]:
In [554]:
test_matrix = np.arange(30).reshape(5,6)
np.ones_like(test_matrix)
Out[554]:
In [555]:
np.empty_like(test_matrix)
Out[555]:
In [556]:
np.identity(n=3, dtype=np.int8)
Out[556]:
In [557]:
np.eye(N=3, M=5, dtype=np.int8)
Out[557]:
In [558]:
np.eye(3)
Out[558]:
In [559]:
np.eye(3,5,k=2) # k => start index
Out[559]:
In [560]:
matrix = np.arange(9).reshape(3, 3)
matrix
Out[560]:
In [561]:
np.diag(matrix)
Out[561]:
In [562]:
np.diag(matrix, k=1) # k => start index
Out[562]:
In [563]:
np.random.uniform(0,1,10).reshape(2,5) #균등분포
Out[563]:
In [564]:
np.random.normal(0,1,10).reshape(2,5)
Out[564]:
In [565]:
test_array = np.arange(1,13).reshape(3,4)
test_array
Out[565]:
In [566]:
test_array.sum(axis=1)
Out[566]:
In [567]:
test_array.sum(axis=0)
Out[567]:
In [568]:
a = np.array([1,2,3])
b = np.array([2,3,4])
np.vstack((a,b))
Out[568]:
In [569]:
np.hstack((a,b))
Out[569]:
In [570]:
a = np.array([[1,2,3]])
b = np.array([[2,3,4]])
np.concatenate( (a,b), axis = 0)
Out[570]:
In [571]:
a = np.array( [ [1,2], [3,4]])
b = np.array( [ [5,6] ] )
np.concatenate( (a,b.T), axis=1)
Out[571]:
In [572]:
test_a = np.array( [[1,2,3], [4,5,6]], float)
test_a
Out[572]:
In [573]:
test_a + test_a
Out[573]:
In [574]:
test_a - test_a
Out[574]:
In [575]:
test_a * test_a
Out[575]:
In [576]:
test_a / test_a
Out[576]:
In [577]:
test_a = np.arange(1,7).reshape(2,3)
test_b = np.arange(7,13).reshape(3,2)
In [578]:
test_a.dot(test_b)
Out[578]:
In [579]:
test_a = np.arange(1,7).reshape(2,3)
test_a
Out[579]:
In [580]:
test_a.T
Out[580]:
In [581]:
test_matrix = np.array([[1,2,3], [4,5,6]], float)
scalar = 3
In [582]:
test_matrix + scalar
Out[582]:
In [583]:
test_matrix - scalar
Out[583]:
In [584]:
test_matrix * scalar
Out[584]:
In [585]:
test_matrix / scalar
Out[585]:
In [586]:
test_matrix ** scalar # 3제곱
Out[586]:
In [587]:
test_matrix // scalar # Matrix - Scalar 몫
Out[587]:
In [588]:
test_matrix = np.arange(1,13).reshape(4,3)
test_matrix
Out[588]:
In [589]:
test_vector = np.arange(10,40,10)
test_vector
Out[589]:
In [590]:
test_matrix + test_vector
Out[590]:
In [591]:
%timeit [2 * value for value in range(1000000) ]
In [592]:
%timeit np.arange(1000000) * 2
In [593]:
a = np.arange(10)
a
Out[593]:
In [594]:
np.any(a > 5) # any -> 하나라도 조건에 만족한다면 true
Out[594]:
In [595]:
np.all(a > 5) # any -> 모두가 조건에 만족한다면 true
Out[595]:
In [596]:
test_a = np.array([1,3,0], float)
test_b = np.array([5,2,1], float)
test_a > test_b
Out[596]:
In [597]:
test_a == test_b
Out[597]:
In [598]:
(test_a > test_b).any()
Out[598]:
In [599]:
a = np.array([1,3,0], float)
np.logical_and(a > 0 , a <3 ) # and 조건의 condition
Out[599]:
In [600]:
b = np.array([True, False, True], bool)
np.logical_not(b)
Out[600]:
In [601]:
c = np.array([False, True, True], bool)
np.logical_or(b,c)
Out[601]:
In [602]:
a = np.array([1,3,0], float)
np.where(a>0, 3, 2)
Out[602]:
In [603]:
a = np.arange(10,20,1)
a
Out[603]:
In [604]:
np.where(a > 15)
Out[604]:
In [605]:
a = np.array ( [ 1, np.nan, np.Inf] , float)
np.isnan(a)
Out[605]:
In [606]:
a = np.array ( [ 1, np.nan, np.Inf] , float)
np.isfinite(a)
Out[606]:
In [607]:
a = np.array([1,2,3,4,5,6,7])
a
Out[607]:
In [608]:
np.argmax(a), np.argmin(a)
Out[608]:
In [609]:
a = np.array([ [1,2,4,7], [9,88,6,45], [9,76,3,4]])
a
Out[609]:
In [610]:
np.argmax(a, axis=1), np.argmin(a, axis=0)
Out[610]:
In [611]:
test_array = np.array([1, 4, 0, 2, 3, 8, 9, 7], float)
test_array > 3
Out[611]:
In [612]:
test_array[test_array > 3]
Out[612]:
In [613]:
condition = test_array < 3
test_array[condition]
Out[613]:
In [614]:
A = np.array( [
[11, 12, 13, 14, 15, 90, 1, 2, 3, 77, 5],
[10, 12, 9, 14, 15, 0, 1, 98, 3, 4, 55],
[13, 9, 8, 14, 12, 0, 11, 2, 43, 4, 5],
[11, 12, 13, 14, 15, 6, 1, 9, 3, 77, 5],
])
In [615]:
B = A < 15
B
Out[615]:
In [616]:
B.astype(np.int)
Out[616]:
In [617]:
a = np.array([2, 4, 6, 8], float)
b = np.array([0, 0, 1, 3, 2, 1], int) # 반드시 integer 로 선언. 그렇지 않으면 에러발생
a[b]
Out[617]:
In [618]:
a.take(b) # take 함수 : bracket index 와 같은 효과
Out[618]:
In [619]:
a = np.array([ [1,4], [9,16]], float)
b = np.array( [0, 0, 1, 1, 0], int)
c = np.array( [0, 1, 1, 1, 1], int)
a[b,c] # b 를 row index, c 를 column index 로 변환하여 표시함
Out[619]:
In [620]:
a = np.loadtxt("./populations.txt")
a
Out[620]:
In [621]:
a_int = a.astype(int)
a_int[:3]
Out[621]:
In [622]:
np.savetxt('int_data.csv', a_int, delimiter=',')
In [623]:
np.save("npy_test", arr = a_int)
In [624]:
npy_array = np.load(file = "npy_test.npy")
npy_array[:3]
Out[624]:
In [ ]:
반응형
'머신러닝' 카테고리의 다른 글
Pandas 너 뭐니?_두번째 (0) | 2018.06.26 |
---|---|
Pandas 너 뭐니?_첫번째 (0) | 2018.06.10 |
머신러닝 분류 (0) | 2018.05.16 |
의사결정나무(decisiontree)_2 (0) | 2018.05.14 |
의사결정나무(decisiontree)_1 (0) | 2018.05.12 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 블록해쉬
- 프로그래스바 표시
- 원계열
- 계정조정계열
- 블록해쉬구현
- 통화량 데이타
- Dash.html
- 말잔
- M1M2비율
- 김성일 작가님
- 연금저축
- 객사오
- pandas apply
- dash
- ChatGPT
- 환율데이터
- M1/M2
- 마연굴
- 리치고
- Forgiving
- 주소를 위경도 변환
- 리치고 주식
- 경제는 어떻게 움직이는가
- Dash 와 html 차이
- 위경도변환
- 연금등록
- 내 연금조회
- 경제주체별 M2
- 환매시점
- 환율이평선
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
글 보관함