๊ฐœ์ธ๊ณต๋ถ€/Python

62. Python Numpy ์—ฐ์Šต๋ฌธ์ œ(1)

LEE_BOMB 2021. 11. 26. 22:24
๋ฌธ1) 6ํ–‰6์—ด์˜ ๋‹ค์ฐจ์› zero ํ–‰๋ ฌ ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•œ ํ›„ ๋‹ค์Œ๊ณผ ๊ฐ™์ด  ๋‹จ๊ณ„๋ณ„๋กœ indexing ํ•˜์‹œ์˜ค.

๋‹จ๊ณ„1 : 36๊ฐœ์˜ ์…€์— 1~36๊นŒ์ง€ ์ •์ˆ˜ ์ฑ„์šฐ๊ธฐ
๋‹จ๊ณ„2 : 2๋ฒˆ์งธ ํ–‰ ์ „์ฒด ์›์†Œ ์ถœ๋ ฅํ•˜๊ธฐ
์ถœ๋ ฅ ๊ฒฐ๊ณผ : 7.   8.   9.  10.  11.  12.
๋‹จ๊ณ„3 : 5๋ฒˆ์งธ ์—ด ์ „์ฒด ์›์†Œ ์ถœ๋ ฅํ•˜๊ธฐ 
์ถœ๋ ฅ๊ฒฐ๊ณผ : 5. 11. 17. 23. 29. 35.            
๋‹จ๊ณ„4 : 15~29๊นŒ์ง€ ๋ธ”๋Ÿญ์œผ๋กœ ์ถœ๋ ฅํ•˜๊ธฐ
์ถœ๋ ฅ๊ฒฐ๊ณผ :  
15.  16.  17.
21.  22.  23
27.  28.  29. 
 
<<์ถœ๋ ฅ ์˜ˆ์‹œ>>
๋‹จ๊ณ„1 : 36๊ฐœ์˜ ์…€์— 1~36๊นŒ์ง€ ์ •์ˆ˜ ์ฑ„์šฐ๊ธฐ 
[[  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.]]
 
๋‹จ๊ณ„2 :์ฒซ๋ฒˆ์งธ ํ–‰ ์ „์ฒด ์›์†Œ ์ถœ๋ ฅ
[ 1.  2.  3.  4.  5.  6.]

๋‹จ๊ณ„3 :5๋ฒˆ์งธ ์—ด ์ „์ฒด ์›์†Œ ์ถœ๋ ฅํ•˜๊ธฐ 
[  5.  11.  17.  23.  29.  35.]

๋‹จ๊ณ„4 :15~29๊นŒ์ง€ ๋ธ”๋Ÿญ์œผ๋กœ ์ถœ๋ ฅํ•˜๊ธฐ
[[ 15.  16.  17.]
 [ 21.  22.  23.]
 [ 27.  28.  29.]]

 

import numpy as np

zarr = np.zeros( (6, 6)  ) 
zarr


๋‹จ๊ณ„1 : 36๊ฐœ์˜ ์…€์— 1~36๊นŒ์ง€ ์ •์ˆ˜ ์ฑ„์šฐ๊ธฐ

cnt = 0
for i in np.arange(6) :
    for j in np.arange(6) :
        cnt += 1 # ์นด์šดํ„ฐ 
        zarr[i, j] = cnt # cell์— ์นด์šดํ„ฐ ๋ฐ˜์˜ 
print(zarr)


๋‹จ๊ณ„2 :์ฒซ๋ฒˆ์งธ ํ–‰ ์ „์ฒด ์›์†Œ ์ถœ๋ ฅ

print(zarr[0])


๋‹จ๊ณ„3 :5๋ฒˆ์งธ ์—ด ์ „์ฒด ์›์†Œ ์ถœ๋ ฅํ•˜๊ธฐ 

print(zarr[:, 4])


๋‹จ๊ณ„4 :15~29๊นŒ์ง€ ๋ธ”๋Ÿญ์œผ๋กœ ์ถœ๋ ฅํ•˜๊ธฐ

print(zarr[2:5, 2:5]) # 3~5ํ–‰, 3~5์—ด

 

 

 

 

 

๋ฌธ์ œ2) ์ •๊ทœ๋ถ„ํฌ๋ฅผ ๋”ฐ๋ฅด๋Š” ๋‚œ์ˆ˜๋ฅผ ์ด์šฉํ•˜์—ฌ 5ํ–‰ 4์—ด ๊ตฌ์กฐ์˜ ๋‹ค์ฐจ์› ๋ฐฐ์—ด ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•˜๊ณ ,
       ๊ฐ ํ–‰ ๋‹จ์œ„๋กœ ํ•ฉ๊ณ„, ์ตœ๋Œ“๊ฐ’(max), ์ตœ์†Ÿ๊ฐ’(min)์„ ๊ตฌํ•˜์‹œ์˜ค.

  << ์ถœ๋ ฅ ๊ฒฐ๊ณผ ์˜ˆ์‹œ>>
[[-0.48934303  0.66886102 -0.28516024 -0.2987261 ]
 [ 0.31522036  1.09249037  1.3761777   0.37050042]
 [ 0.44385644  0.67703682  1.7081371  -0.8927717 ]
 [ 0.81932717  0.58966972 -1.0586488  -1.77442269]
 [ 1.17288899 -0.50150488  0.05734177 -1.4528292 ]]
  
ํ–‰ ํ•ฉ๊ณ„: [-0.40436836  3.15438885  1.93625866 -1.42407459 -0.72410332]
ํ–‰ ์ตœ๋Œ“๊ฐ’ : [0.66886102 1.3761777  1.7081371  0.81932717 1.17288899]
ํ–‰ ์ตœ์†Ÿ๊ฐ’ : [-0.48934303  0.31522036 -0.8927717  -1.77442269 -1.4528292 ]

์—ด ํ•ฉ๊ณ„: [ 2.26194994  2.52655305  1.79784752 -4.04824926]
์—ด ์ตœ๋Œ“๊ฐ’ : [1.17288899 1.09249037 1.7081371  0.37050042]
์—ด ์ตœ์†Ÿ๊ฐ’ : [-0.48934303 -0.50150488 -1.0586488  -1.77442269]

 

import numpy as np

rarr = np.random.randn(5, 4)
print(rarr)

print()


์ถ•(axis) ์ด์šฉ 

print('ํ–‰ ํ•ฉ๊ณ„:', rarr.sum(axis = 1))
print('ํ–‰ ์ตœ๋Œ“๊ฐ’ :',rarr.max(axis = 1))
print('ํ–‰ ์ตœ์†Ÿ๊ฐ’ :',rarr.min(axis = 1))
    
print()

print('์—ด ํ•ฉ๊ณ„:', rarr.sum(axis = 0))
print('์—ด ์ตœ๋Œ“๊ฐ’ :',rarr.max(axis = 0))
print('์—ด ์ตœ์†Ÿ๊ฐ’ :',rarr.min(axis = 0))