본문 바로가기
Data_Analysis/Numpy, Pandas

[Numpy] 함수

by Classic! 2020. 7. 13.

[reshape]

: 배열의 행과 열 재배치

# 2행 8열 배열
np.random.seed(0)
narray=np.random.randn(2,8)
print(narray)
'''
[[ 1.76405235  0.40015721  0.97873798  2.2408932   1.86755799 -0.97727788   0.95008842 -0.15135721]
 [-0.10321885  0.4105985   0.14404357  1.45427351  0.76103773  0.12167502   0.44386323  0.33367433]]
 '''
 
 # 4행 4열 배열로 변경
 narray.reshape(4,4)
 '''
 [[ 1.76405235,  0.40015721,  0.97873798,  2.2408932 ],
  [ 1.86755799, -0.97727788,  0.95008842, -0.15135721],
  [-0.10321885,  0.4105985 ,  0.14404357,  1.45427351],
  [ 0.76103773,  0.12167502,  0.44386323,  0.33367433]]
 '''
 
 

 

 

[wehre]

: 배열의 요소에 조건 적용

# np.where(조건,조건이 True일 경우,조건이 False일 경우)
narray1=np.where(narray>0,narray,0)	# 0보다 큰 요소는 narray의 요소를 가져오고 아니면 0으로 처리
narray1

'''
[[1.76405235 0.40015721 0.97873798 2.2408932 ]
 [1.86755799 0.         0.95008842 0.        ]
 [0.         0.4105985  0.14404357 1.45427351]
 [0.76103773 0.12167502 0.44386323 0.33367433]]
'''

 

 

[통계함수]

- sum,mean, cumsum,argmax/argmin

narray=narray=np.random.randint(0,10,16).reshape(4,4)
print(narray)
print("*"*50)
'''
[[8 2 3 2]
 [0 8 8 3]
 [8 2 8 4]
 [3 0 4 3]]
'''

# sum >> axis=1: 같은 행에서 다른 열을 더하기
print(np.sum(narray, axis=1))
print("*"*50)
'''
[15 19 22 10]
'''

# sum >> axis=1: 같은 열에서 다른 행을 더하기
print(np.sum(narray, axis=0))
print("*"*50)
'''
[19 12 23 12]
'''

# axis 지정 하지 않으면 모든 요소 더함
print(np.sum(narray))
print("*"*50)	#66

# mean : 평균 값 계산
np.mean(narray)	# 4.4375
np.mean(narray, axis=1)	# [2.5 , 4.75, 4.25, 3.75]
np.mean(narray, axis=0)	# [4.25, 2.75, 3.25, 4.75]

# cumsum : 누적합
print(np.cumsum(narray,axis=1))
print("*"*50)
'''
[[ 8 10 13 15]
 [ 0  8 16 19]
 [ 8 10 18 22]
 [ 3  3  7 10]]
'''

# argmax : 각 행(axis=0)/각 열(axis=1) 중에서 가장 큰 값의 인덱스를 리턴
print(np.argmax(narray,axis=0))	# [0 1 1 2]
print(np.argmax(narray,axis=1))	# [0 2 3 2]

# argmin : 각 행(axis=0)/각 열(axis=1) 중에서 가장 작은 값의 인덱스를 리턴
print(np.argmin(narray,axis=0))	# [2 0 3 3]
print(np.argmin(narray,axis=1))	# [1 0 0 2]

 

 

 

'Data_Analysis > Numpy, Pandas' 카테고리의 다른 글

[Pandas] DataFrame 생성  (0) 2020.07.21
[Pandas] Series  (0) 2020.07.13
[Numpy] 배열 인덱싱, 슬라이싱  (0) 2020.07.12
[Numpy] 배열 생성  (0) 2020.07.10
[프로그램 설치] 아나콘다 & 주피터노트북  (0) 2020.07.06

댓글