๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

ํ•˜๋ฃจ๊ณต๋ถ€

์ œ 11์žฅ ๐Ÿ“’๋ฐ์ดํ„ฐ ๋ถ„์„_Numpy-2(์—ฐ์‚ฐ)๐Ÿ“’

๐Ÿ“Œ์‚ฐ์ˆ ์—ฐ์‚ฐ

  • 1. ๋”ํ•˜๊ธฐ : +, add()
  • 2. ๋นผ๊ธฐ : -, subtract()
  • 3. ๋‚˜๋ˆ„๊ธฐ : /, divide()
  • 4. ๊ณฑํ•˜๊ธฐ : *, multiply()
  • 5. ์ง€์ˆ˜๊ณฑ ํ‘œํ˜„ : exp()
  • 6. ์ œ๊ณฑ๊ทผ : sqrt()
  • 7. ๋กœ๊ทธ : log()
  • 8. ๋‚ด์ (ํ–‰๋ ฌ๊ณฑ) : dot()

๐Ÿ”‘๋”ํ•˜๊ธฐ์™€ ๋นผ๊ธฐ๋Š” ๊ฐ™์€ ์—ด๋ผ๋ฆฌ ์—ฐ์‚ฐ ์ž‘์šฉ์ด ์ผ์–ด๋‚˜๊ณ 

     ๊ณฑ์…ˆ์€ ํ–‰๋ ฌ๊ณฑ์— ๋”ฐ๋ฅธ ์—ฐ์‚ฐ์ž‘์šฉ์ด ์ผ์–ด๋‚œ๋‹ค

๐Ÿ”‘ ๋”ํ•˜๊ธฐ์™€ ๊ณฑํ•˜๊ธฐ๋Š” ์•ž๋’ค ์ˆœ์„œ์˜ ๊ตฌ์• ๋ฅผ ๋ฐ›์ง€ ์•Š์ง€๋งŒ ๋นผ๊ธฐ์™€ ๋‚˜๋ˆ„๊ธฐ๋Š” 

     ์ˆœ์„œ์— ๋”ฐ๋ผ ๊ฒฐ๊ด๊ฐ’์ด ๋‹ฌ๋ผ์ง„๋‹ค๋Š” ๊ฒƒ์„ ๋ช…์‹ฌํ•˜์ž

ํ–‰๋ ฌ๊ณฑ์…ˆ ๋ฐฉ์‹ ์„ค๋ช…


๐Ÿ“ŒNumpy ๋ฐฐ์—ด ์—ฐ์‚ฐ

2. ๋น„๊ต ์—ฐ์‚ฐ

1) ์š”์†Œ

  • ๊ฐ’์— ๋Œ€ํ•œ ๋น„๊ต : ==, !=
  • ํฌ๊ธฐ์— ๋Œ€ํ•œ ๋น„๊ต : >, <, >=, <=

2) ๋ฐฐ์—ด

  • ๋‘ ๋ฐฐ์—ด ์ „์ฒด์— ๋Œ€ํ•œ ๋น„๊ต : array_equal(a, b)

 

๐Ÿ“Œ์ง‘๊ณ„ ํ•จ์ˆ˜

  • Numpy ๋ฐฐ์—ด์— ๋Œ€ํ•ด ์ง‘๊ณ„ ํ•จ์ˆ˜๋ฅผ ์ ์šฉํ•  ๋•Œ๋Š” ๋ฐ˜๋“œ์‹œ axis๋กœ ์„ค์ •๋œ ๊ธฐ์ค€์— ๋”ฐ๋ผ ์—ฐ์‚ฐ ์ˆ˜ํ–‰
  • ๋ณ„๋„๋กœ ๊ฐ’์„ ์ง€์ •ํ•˜์ง€ ์•Š์œผ๋ฉด ๊ธฐ๋ณธ๊ฐ’์€ axis = None์œผ๋กœ ์ง€์ •
  • axis ๐Ÿ’ฅ ์•„์ฃผ ์œ ์šฉํ•˜๊ฒŒ ์“ธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค๐Ÿ’ฅ๐Ÿ˜„
    • axis = None
      ์ „์ฒด ๋ฐ์ดํ„ฐ๋ฅผ ํ•˜๋‚˜์˜ ๋ฐฐ์—ด๋กœ ๊ฐ„์ฃผํ•˜๊ณ  ์ง‘๊ณ„ ํ•จ์ˆ˜์˜ ์—ฐ์‚ฐ ๋ฒ”์œ„๋ฅผ ์ „์ฒด ๋ฐฐ์—ด๋กœ ์ง€์ •

axis = 0 ๐Ÿ’ฅ
์—ด์„ ๊ธฐ์ค€์œผ๋กœ ๋™์ผํ•œ ์—ด์— ์žˆ๋Š” ์š”์†Œ๋ฅผ ํ•˜๋‚˜์˜ ๊ทธ๋ฃน์œผ๋กœ ๋ฌถ์–ด ์ง‘๊ณ„ ํ•จ์ˆ˜์˜ ์—ฐ์‚ฐ ๋ฒ”์œ„๋กœ ์ง€์ •

axis = 1
ํ–‰์„ ๊ธฐ์ค€์œผ๋กœ ๋™์ผํ•œ ํ–‰์— ์žˆ๋Š” ์š”์†Œ๋ฅผ ํ•˜๋‚˜์˜ ๊ทธ๋ฃน์œผ๋กœ ๋ฌถ์–ด ์ง‘๊ณ„ ํ•จ์ˆ˜์˜ ์—ฐ์‚ฐ ๋ฒ”์œ„๋กœ ์ง€์ •

  • ์ง‘๊ณ„ ํ•จ์ˆ˜ : ๋ฐฐ์—ด ๊ฐ์ฒด์— ๋Œ€ํ•œ ๋ฉ”์„œ๋“œ๋กœ ์‚ฌ์šฉํ•˜๊ฑฐ๋‚˜ Numpy ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ๋ฉ”์†Œ๋“œ๋กœ ์‚ฌ์šฉํ•˜๋Š” ๋‘ ๊ฐ€์ง€ ๋ฐฉ๋ฒ•
    • ํ•ฉ๊ณ„ : sum()
    • ์ตœ์†Ÿ๊ฐ’ : min()
    • ์ตœ๋Œ“๊ฐ’ : max()
    • ๋ˆ„์  ํ•ฉ๊ณ„ : cumsum()
    • ํ‰๊ท  : mean()
    • ์ค‘์•™๊ฐ’ : median()
      • ํฌ๊ธฐ ์ˆœ์œผ๋กœ ๋‚˜์—ด๋œ ๋ฐ์ดํ„ฐ์— ๋Œ€ํ•ด ์ค‘์•™์— ์œ„์น˜ํ•˜๋Š” ๊ฐ’
    • ์ƒ๊ด€๊ณ„์ˆ˜ : corrcoef()
      • ๋ฐ์ดํ„ฐ ๊ฐ„์˜ ์ƒ๊ด€๊ด€๊ณ„๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ์ˆ˜์น˜(-1 <= r <= 1)
    • ํ‘œ์ค€ํŽธ์ฐจ : std()
      • ๋ถ„์‚ฐ์˜ ์ œ๊ณฑ๊ทผ, ๋ฐ์ดํ„ฐ๊ฐ€ ํ‰๊ท ์œผ๋กœ๋ถ€ํ„ฐ ํฉ์–ด์ ธ ์žˆ๋Š” ์ •๋„
      • ๋ถ„์‚ฐ = ํŽธ์ฐจ(์š”์†Œ-์ „์ฒด ํ‰๊ท ) ์ œ๊ณฑ์˜ ํ‰๊ท 
    • ๊ณ ์œ ๊ฐ’ : unique()

 

โ€ป numpy์—์„œ๋Š” 3๊ฐœ ์š”์†Œ๋ฅผ ์ด์šฉํ•œ ์ƒ๊ด€๋„๋ฅผ ๊ตฌํ•˜๋Š” ๊ฒƒ์ด ๋ถˆ๊ฐ€๋Šฅ
โ€ป ํŒฌ๋”์Šค๋ฅผ ์ด์šฉํ•˜๋Š” ๊ฒฝ์šฐ๋Š” 2๊ฐœ์”ฉ ์ง์ง€์€ ๋ชจ๋“  ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ๊ตฌํ•ด์ค€๋‹ค

 

๐Ÿ“Œ๋ธŒ๋กœ๋“œ์บ์ŠคํŒ…(BroadCasting)

  • ์„œ๋กœ ๋‹ค๋ฅธ ๊ตฌ์กฐ(shape)๋ฅผ ๊ฐ€์ง„ ๋ฐฐ์—ด์— ๋Œ€ํ•ด ์—ฐ์‚ฐ์„ ์ˆ˜ํ–‰ํ•  ๋•Œ ๊ตฌ์กฐ๋ฅผ ๋งž์ถ”๋Š” ๊ณผ์ •
  • ๋ฐฐ์—ด๊ณผ ์Šค์นผ๋ผ ๊ฐ’ ๊ฐ„์˜ ์—ฐ์‚ฐ
  • ๋ฐฐ์—ด๊ณผ ๋ฐฐ์—ด ๊ฐ„์˜ ์—ฐ์‚ฐ
  • ๋ธŒ๋กœ๋“œ์บ์ŠคํŒ… ๊ทœ์น™ : ์ถ•์˜ ๊ธธ์ด๊ฐ€ ์ผ์น˜ํ•˜๊ฑฐ๋‚˜ ๋‘˜ ์ค‘ ํ•˜๋‚˜์˜ ๊ธธ์ด๊ฐ€ 1์ธ ๋‘ ๋ฐฐ์—ด์— ๋Œ€ํ•ด ํ˜ธํ™˜์„ฑ์„ ๊ฐ€์ง
  • reshape๊ณผ append(์ถ”๊ฐ€), axis(ํ–‰, ์—ด ๋ฐฉํ–ฅ)์„ ํ™œ์šฉํ•˜์—ฌ ์„œ๋กœ ๋‹ค๋ฅธ ๋ฐฐ์—ด์„ ๋™์ผํ•œ ๋ฐฐ์—ด๋กœ ์—ฐ์‚ฐ์ฒ˜๋ฆฌ๊ฐ€ ๊ฐ€๋Šฅํ•˜๋‹ค.

๐Ÿ“Œ๋ฒกํ„ฐ ์—ฐ์‚ฐ

loop_result = 0
for i in x:
    loop_result += i
print(loop_result)

  • ์š”์†Œ๋“ค์— ๋Œ€ํ•œ ์—ฐ์‚ฐ์„ ๋ฒกํ„ฐ ์—ฐ์‚ฐ์œผ๋กœ ์ฒ˜๋ฆฌํ•˜๋ฉด ์ผ๋ฐ˜์ ์ธ for๋ฐ˜๋ณต๋ฌธ์œผ๋กœ ์—ฐ์‚ฐ ์ž‘์—…์„ ์ฒ˜๋ฆฌํ•˜๋Š” ๊ฒƒ๋ณด๋‹ค ์›”๋“ฑํžˆ ๋›ฐ์–ด๋‚œ ์ฒ˜๋ฆฌ ์†๋„๋กœ ํšจ์œจ์ ์ธ ์ž‘์—… ๊ฐ€๋Šฅ
  • (์ฐธ์กฐ) ์…€์„ ์ˆ˜ํ–‰ํ•˜๋Š”๋ฐ ์†Œ์š”๋œ ์‹œ๊ฐ„์„ ํ‘œ๊ธฐํ•ด์ฃผ๋Š” ์ฃผํ”ผํ„ฐ ๋…ธํŠธ๋ถ ๋ช…๋ น์–ด
    • %%time(์…€์˜ ๊ฐ€์žฅ ์ƒ๋‹จ์— ์œ„์น˜ํ•ด์•ผ ํ•จ(์ฃผ์„ ํฌํ•จํ•ด์„œ ๊ฐ€์žฅ ์ƒ๋‹จ์— ์œ„์น˜ํ•ด์•ผ ํ•จ.)

 

๐Ÿ“Œ๋ฐฐ์—ด ์ •๋ ฌ

  • sort(axis = -1) ๋ฉ”์„œ๋“œ : axis๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์š”์†Œ๋ฅผ ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌ
    • ๊ธฐ๋ณธ๊ฐ’(axis = -1) : ํ˜„์žฌ ๋ฐฐ์—ด์˜ ๋งˆ์ง€๋ง‰ axis
    • axis = 0 : ์—ด ๋‹จ์œ„ ์ •๋ ฌ
    • axis = 1 : ํ–‰ ๋‹จ์œ„ ์ •๋ ฌ
    • ์›๋ณธ ๊ฐ์ฒด์— ์ •๋ ฌ ๊ฒฐ๊ณผ๊ฐ€ ๋ฐ˜์˜๋จ
  • np.sort(axis = -1) : axis๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์š”์†Œ๋ฅผ ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌ
    • ๊ธฐ๋ณธ๊ฐ’(axis = -1) : ํ˜„์žฌ ๋ฐฐ์—ด์˜ ๋งˆ์ง€๋ง‰ axis
    • axis = 0 : ์—ด ๋‹จ์œ„ ์ •๋ ฌ
    • axis = 1 : ํ–‰ ๋‹จ์œ„ ์ •๋ ฌ
    • ์ •๋ ฌ๋œ ์ƒˆ๋กœ์šด ๋ฐฐ์—ด์„ ๋ฐ˜ํ™˜ํ•จ
  • np.argsort(arr) : ์ •๋ ฌ ์ˆœ์„œ๋ฅผ ๋ฐ˜ํ™˜
    • ๊ธฐ๋ณธ๊ฐ’(axis = -1) : ํ˜„์žฌ ๋ฐฐ์—ด์˜ ๋งˆ์ง€๋ง‰ axis
    • axis = 0 : ์—ด ๋‹จ์œ„ ์ •๋ ฌ
    • axis = 1 : ํ–‰ ๋‹จ์œ„ ์ •๋ ฌ

 

์˜ˆ) 2์ฐจ์› ๋ฐฐ์—ด์˜ ๊ฒฝ์šฐ

๊ธฐ๋ณธ๊ฐ’ axis = -1
ํ˜„์žฌ ๋ฐฐ์—ด์˜ axis = 0, 1
๋งˆ์ง€๋ง‰ axis = 1 (row๋ณ„ ์ •๋ ฌ)

ํ–‰๋ณ„ ์ •๋ ฌ
์—ด๋ณ„ ์ •๋ ฌ


์ธ๋ฑ์‹ฑ(Indexing), ์Šฌ๋ผ์ด์‹ฑ(Slicing)

1. ์ธ๋ฑ์‹ฑ : ํ•˜๋‚˜์˜ ์š”์†Œ์— ๋Œ€ํ•ด ์ฐธ์กฐ

  • ๊ฐ ์ฐจ์›์— ๋”ฐ๋ผ ๋ฐฐ์—ด์ด ์ฐธ์กฐํ•˜๋Š” ์ธ๋ฑ์Šค์˜ ๊ฐœ์ˆ˜๊ฐ€ ๋‹ค๋ฆ„
    • 1์ฐจ์› ๋ฐฐ์—ด : ์ธ๋ฑ์Šค 1๊ฐœ (ํ•˜๋‚˜์˜ ํ–‰์— ์ ‘๊ทผ = 1ํ–‰ arr2 [0], ํ•˜๋‚˜์˜ ์—ด์— ์ ‘๊ทผ 1์—ด arr2 [:, 1]
    • 2์ฐจ์› ๋ฐฐ์—ด : ์ธ๋ฑ์Šค 2๊ฐœ
    • 3์ฐจ์› ๋ฐฐ์—ด : ์ธ๋ฑ์Šค 3๊ฐœ 
      • ์˜ˆ์‹œ) 3์ฐจ์› ๋ฐฐ์—ด ์ƒ์„ฑ
         ๊ตฌ์กฐ : 2๊ฐœ์˜ ์ธต(ํŽ˜์ด์ง€, ๋ฉด), 4ํ–‰ 3์—ด
      •  np.arange() => 24๊ฐœ์˜ size
        arr3 = np.arange(0, 24).reshape((2, 4, 3))
        np_print(arr3)
  • ์ธ๋ฑ์‹ฑ์œผ๋กœ ์ฐธ์กฐํ•œ ์š”์†Œ์— ๋Œ€ํ•ด ์ˆ˜์ • ๊ฐ€๋Šฅ
  • ์ธ๋ฑ์Šค ๋ฐฐ์—ด์„ ์ „๋‹ฌํ•˜์—ฌ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์š”์†Œ ์ฐธ์กฐ
    •  ์—ฌ๋Ÿฌ ๊ฐœ์˜ ํ–‰ ์กฐํšŒ             ์—ฌ๋Ÿฌ๊ฐœ์˜ ์—ด ์กฐํšŒ
      arr2[:, [0, 2]]                       arr2[[0, 3]]

2. ์Šฌ๋ผ์ด์‹ฑ : ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์š”์†Œ์— ๋Œ€ํ•ด ์ฐธ์กฐ

  • 1์ฐจ์› ์Šฌ๋ผ์ด์‹ฑ โœ…1~n๋ฒˆ ์ ‘๊ทผ = a[1:n], 1๋ฒˆ~n๋ฒˆ๊นŒ์ง€ 3๊ฐœ์”ฉ ๊ฑด๋„ˆ๋›ด๋‹ค = a[1:n:3]
  • 2์ฐจ์› ๋ฐฐ์—ด ์Šฌ๋ผ์ด์‹ฑ โœ… 0ํ–‰๋ถ€ํ„ฐ 3ํ–‰๊นŒ์ง€ ์ ‘๊ทผ = 2d_array[ํ–‰(:์—ด:๊ฐ„๊ฒฉ)]
  • axis ๋ณ„๋กœ ๋ฒ”์œ„ ์ง€์ •
    • from_index : ์‹œ์ž‘ ์ธ๋ฑ์Šค(ํฌํ•จ), 0์ผ ๊ฒฝ์šฐ ์ƒ๋žต ๊ฐ€๋Šฅ
    • to_index : ์ข…๋ฃŒ ์ธ๋ฑ์Šค(๋ฏธํฌํ•จ), ๋งˆ์ง€๋ง‰ ์ธ๋ฑ์Šค์ผ ๊ฒฝ์šฐ ์ƒ๋žต ๊ฐ€๋Šฅ
    • step : ์—ฐ์†๋˜์ง€ ์•Š์€ ๋ฒ”์œ„์˜ ๊ฒฝ์šฐ ๊ฐ„๊ฒฉ ์ง€์ •
  • ์—ด๋งŒ ์กฐํšŒํ•˜๋Š” ๊ฒฝ์šฐ : ์ „์ฒด ํ–‰์— ์Šฌ๋ผ์ด์‹ฑ์œผ๋กœ ์ ‘๊ทผ ํ›„ ํŠน์ • ์—ด์„ ์กฐํšŒ

๐Ÿ“Œ ์กฐ๊ฑด ์ƒ‰์ธ(Boolean Indexing)  ๋ฐฉ๋ฒ• : ์ž๋ฃŒ[์ž๋ฃŒ๋ฅผ ํฌํ•จํ•œ ์กฐ๊ฑด์‹]

  • ๋ฐฐ์—ด์˜ ์š”์†Œ์— ๋Œ€ํ•ด ์กฐ๊ฑด์„ ์ ์šฉํ•˜์—ฌ True, False๋กœ ์กฐ๊ฑด์— ๋Œ€ํ•œ ๊ฒฐ๊ณผ ๋ฐ˜ํ™˜
  • True์— ํ•ด๋‹นํ•˜๋Š” ์š”์†Œ๋งŒ ์กฐํšŒํ•˜์—ฌ ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” ๊ฒฐ๊ณผ ๋ฐ˜ํ™˜

 

๐Ÿ“Œ ๋ฐฐ์—ด ๋ณ€ํ™˜

1. ์ „์น˜(Transpose)

  • ๋ฐฐ์—ด์˜ ํ–‰/์—ด ์ธ๋ฑ์Šค๊ฐ€ ๋ฐ”๋€Œ๋Š” ๋ณ€ํ™˜
  • ๋ฐฐ์—ด๊ฐ์ฒด.T : ํ–‰/์—ด ์ธ๋ฑ์Šค๊ฐ€ ๋ฐ”๋€ ์ƒˆ๋กœ์šด ๋ฐฐ์—ด์„ ๋ฐ˜ํ™˜ํ•˜๋ฉฐ ์›๋ณธ์€ ๋ณ€๊ฒฝ๋˜์ง€ ์•Š์Œ

2. ๋ฐฐ์—ด ํ˜•ํƒœ ๋ณ€๊ฒฝ

  • arr.ravel(), np.ravel(arr)
    • ๋‹ค์ฐจ์› ๋ฐฐ์—ด์„ 1์ฐจ์› ๋ฐฐ์—ด๋กœ ๋ณ€ํ™˜
    • np.ravel() : 1์ฐจ์›์œผ๋กœ ๋ณ€ํ™˜๋˜๋Š” ๊ฒฐ๊ณผ๋Š” ์›๋ณธ ๋ฐฐ์—ด์— ๋ฐ˜์˜๋˜์ง€ ์•Š์Œ
    • arr.ravel() : 1์ฐจ์›์œผ๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ๋ฐฐ์—ด์˜ ์š”์†Œ๊ฐ€ ๋ณ€๊ฒฝ๋˜๋ฉด ์›๋ณธ ๋ฐฐ์—ด์—๋„ ๋ฐ˜์˜๋จ
  • arr.reshape(new_shape), np.reshape(arr, new_shape)
    • ์›๋ณธ ๋ฐฐ์—ด ๊ฐ์ฒด์˜ ๊ตฌ์กฐ(shape)๋ฅผ ๋ณ€๊ฒฝ
    • ๋ณ€๊ฒฝํ•˜๋ ค๋Š” ๊ตฌ์กฐ์˜ ์ „์ฒด ์š”์†Œ ๊ฐœ์ˆ˜์™€ ์›๋ณธ ๋ฐฐ์—ด์˜ ์ „์ฒด ์š”์†Œ ๊ฐœ์ˆ˜๊ฐ€ ๋™์ผํ•ด์•ผ ํ•จ
    • ๋ณ€๊ฒฝํ•˜๋ ค๋Š” ๊ตฌ์กฐ์˜ ํŠœํ”Œ ์ค‘ ํ•˜๋‚˜์˜ ์›์†Œ๋Š” -1๋กœ ๋Œ€์ฒดํ•  ์ˆ˜ ์žˆ๊ณ  ๋‹ค๋ฅธ ํ•˜๋‚˜์˜ ์›์†Œ๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๊ณ„์‚ฐ๋˜์–ด ์‚ฌ์šฉ๋จ
    • reshape() ๋ฉ”์„œ๋“œ๊ฐ€ ๋ฐ˜ํ™˜ํ•˜๋Š” ๋ฐฐ์—ด์˜ ์š”์†Œ๊ฐ€ ๋ณ€๊ฒฝ๋˜๋ฉด ์›๋ณธ ๋ฐฐ์—ด์—๋„ ๋ฐ˜์˜๋จ

 

3. ์š”์†Œ ๋ณ€๊ฒฝ, ์ถ”๊ฐ€, ์‚ญ์ œ(๐Ÿ’ฏ์•„์ฃผ ์ค‘์š” ์žŠ์–ด๋ฒ„๋ฆฌ์ง€ ๋ง์žโ—โ—)

1) ์š”์†Œ ๋ณ€๊ฒฝ

  • arr.resize(new_shape), np.resize(arr, new_shape)
    • ๋ฐฐ์—ด ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์›๋ณธ ๋ณ€๊ฒฝ, np ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์ƒˆ๋กœ์šด ๋ฐฐ์—ด ๋ฐ˜ํ™˜
    • ๋ฐฐ์—ด์˜ ๊ตฌ์กฐ(shape)๋ฅผ ๋ณ€๊ฒฝํ•˜๋ฉฐ ์›๋ณธ ๋ฐฐ์—ด์˜ ์š”์†Œ ์ˆ˜์™€ ๋™์ผํ•˜์ง€ ์•Š์•„๋„ ๋ณ€๊ฒฝ ๊ฐ€๋Šฅ
    • ๋ณ€๊ฒฝ๋˜๋Š” ๋ฐฐ์—ด์˜ ์š”์†Œ ์ˆ˜๊ฐ€ ๋™์ผํ•  ๊ฒฝ์šฐ : ๐Ÿ”‘reshape() ๋ฉ”์„œ๋“œ์™€ ๋™์ผํ•œ ๊ฒฐ๊ณผ
    • ๋ณ€๊ฒฝ๋˜๋Š” ๋ฐฐ์—ด์˜ ์š”์†Œ ์ˆ˜๊ฐ€ ๋” ๋งŽ์„ ๊ฒฝ์šฐ
      • np.resize(arr, new_shape) : ์›๋ณธ์„ ๋ณ€๊ฒฝํ•˜์ง€ ์•Š๊ณ , ๋ชจ์ž๋ž€ ๋ถ€๋ถ„์„ ๊ธฐ์กด ๋ฐฐ์—ด ๊ฐ’์—์„œ ๋ณต์‚ฌํ•ด์„œ ์ถ”๊ฐ€
      • arr.resize(new_shape) : ์›๋ณธ์„ ๋ณ€๊ฒฝํ•˜๊ณ , ๋ชจ์ž๋ž€ ๋ถ€๋ถ„์„ 0์œผ๋กœ ์ฑ„์›€
      • ๊ณตํ†ต์ ์œผ๋กœ new_shape์€ ํŠœํ”Œ๋กœ ์ถ”๊ฐ€
    • ๋ณ€๊ฒฝ๋˜๋Š” ๋ฐฐ์—ด์˜ ์š”์†Œ ์ˆ˜๊ฐ€ ๋” ์ ์„ ๊ฒฝ์šฐ : ๋งˆ์ง€๋ง‰ ๋‚จ์€ ์š”์†Œ ์‚ญ์ œ

 

2) ์š”์†Œ ์ถ”๊ฐ€

  • np.append(arr, values, axis=None)
    • arr ๋งˆ์ง€๋ง‰์— values๋ฅผ ์ถ”๊ฐ€
    • axis ์ง€์ •ํ•˜์ง€ ์•Š์€ ๊ฒฝ์šฐ(๊ธฐ๋ณธ๊ฐ’) : 1์ฐจ์› ๋ฐฐ์—ด๋กœ ๋ณ€ํ˜•๋˜์–ด ๊ฒฐํ•ฉ
    • axis = 0 : ํ–‰ ๋ฐฉํ–ฅ์œผ๋กœ ๊ฒฐํ•ฉ (๋‹จ, ์—ด์˜ ๊ฐœ์ˆ˜๊ฐ€ ๋™์ผํ•ด์•ผ ํ•จ)
    • axis = 1 : ์—ด ๋ฐฉํ–ฅ์œผ๋กœ ๊ฒฐํ•ฉ (๋‹จ, ํ–‰์˜ ๊ฐœ์ˆ˜๊ฐ€ ๋™์ผํ•ด์•ผ ํ•จ)
    • ์›๋ณธ ๋ฐฐ์—ด๋“ค์— ๋ฐ˜์˜๋˜์ง€ ์•Š์Œ

3) ์š”์†Œ ์‚ญ์ œ

  • np.delete(arr, idx, axis=None)
    • ์ง€์ •ํ•œ ์ธ๋ฑ์Šค(idx)์— ํ•ด๋‹นํ•˜๋Š” ์š”์†Œ๋ฅผ ์‚ญ์ œ
    • axis ์ง€์ •ํ•˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ(๊ธฐ๋ณธ๊ฐ’) : 1์ฐจ์› ๋ฐฐ์—ด๋กœ ๋ณ€ํ˜•๋˜์–ด ํ•ด๋‹น ์ธ๋ฑ์Šค์— ํ•ด๋‹นํ•˜๋Š” ์š”์†Œ๋ฅผ ์‚ญ์ œ
    • axis = 0 : ํ–‰ ๋ฐฉํ–ฅ์œผ๋กœ n๋ฒˆ์งธ ํ–‰์„ ์‚ญ์ œ
    • axis = 1 : ์—ด ๋ฐฉํ–ฅ์œผ๋กœ n๋ฒˆ์งธ ์—ด์„ ์‚ญ์ œ
    • ์›๋ณธ ๋ฐฐ์—ด์— ๋ฐ˜์˜๋˜์ง€ ์•Š์Œ

4) ๋ฐฐ์—ด ๊ฒฐํ•ฉ

  • np.concatenate((arr1, arr2, ...), axis=0)
    • axis = 0(๊ธฐ๋ณธ๊ฐ’) : ํ–‰ ๋ฐฉํ–ฅ์œผ๋กœ ๋‘ ๋ฐฐ์—ด ๊ฒฐํ•ฉ (๋‹จ, ์—ด์˜ ๊ฐœ์ˆ˜๊ฐ€ ๋™์ผ)
    • axis = 1 : ์—ด ๋ฐฉํ–ฅ์œผ๋กœ ๋‘ ๋ฐฐ์—ด ๊ฒฐํ•ฉ (๋‹จ, ํ–‰์˜ ๊ฐœ์ˆ˜๊ฐ€ ๋™์ผ)
    • ์›๋ณธ ๋ฐฐ์—ด๋“ค์€ ๋ณ€๊ฒฝ๋˜์ง€ ์•Š์Œ
  1.