Flower in my dev/Python

<PYTHON>[Numpy_05 배열연산&산술&통계]

꽃선생 2017. 11. 27. 22:53

[Numpy_05 배열연산&산술&통계]

 

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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
import numpy as np
 
arr1 = np.array([1,2,3,4,5])
arr2 = np.array([6,7,8,9,0])
arr3 = np.array([True, False, True, False, True])
 
# 파이썬만으로 동작
result = [(a if c else b) for a,b,c in zip(arr1,arr2,arr3)]
print(result)
 
# numpy.where로 동작
# where로 if문과 동일하게 구성할 수 있다.
result = np.where(arr3,arr1,arr2)
print(result)
 
arr4 = np.random.randn(4,4)
print(arr4)
# 0보다 크면 2 작으면 -2
print(np.where(arr4 > 0,2,-2))
# 0보다 크면 2 작으면 값변화 없음
print(np.where(arr4>0,2,arr4))
 
arr1 = np.random.randn(5,4)
print(arr1)
 
# 원소 합
print(arr1.sum())
print(arr1.sum(0))
 
# 산술평균
print(arr1.mean())
print(arr1.mean(axis=1))
 
# 표준편차
print(arr1.std())
print(arr1.std(0))
 
# 분산
print(arr1.var())
print(arr1.var(0))
 
# 최소 값, 최대 값
print(arr1.min())
print(arr1.max())
 
# 최소 원소의 색인 값, 최대 원소의 색인 값
print(arr1.argmin())
print(arr1.argmax())
 
arr2 = np.array([[0,1,2],[3,4,5],[6,7,8]])
# 누적 합
print(arr2.cumsum(0))
# 누적 곱
print(arr2.cumprod(1))
cs

 

- 테스트