import numpy as np import time # ๋ฐ์ดํฐ ์์ฑ data_list = list(range(1, 100000001)) # 1๋ถํฐ 1,000,000๊น์ง์ ๋ฆฌ์คํธ ์์ฑ data_array = np.array(data_list) # ๊ฐ์ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ง NumPy ๋ฐฐ์ด ์์ฑ # ๋น๊ต - 1 # ๋ฃจํ๋ฅผ ์ฌ์ฉํ ์ฐ์ฐ start_time = time.time() result_list = [] for x in data_list: result_list.append(x * 2) end_time = time.time() loop_duration = end_time - start_time print(f"๋ฃจํ๋ฅผ ์ฌ์ฉํ ์ฐ์ฐ ์๊ฐ: {loop_duration:.6f}์ด") # ๋น๊ต - 2 # ๋ฒกํฐํ๋ ์ฐ์ฐ (Vectorized Operations) start_time = time.time() result_array = data_array * 2 end_time = time.time() vectorized_duration = end_time - start_time print(f"Vectorized Operations ์ฐ์ฐ ์๊ฐ: {vectorized_duration:.6f}์ด") # ๊ฒฐ๊ณผ ๋น๊ต print(f"Vectorized Operations ์ฐ์ฐ ์๊ฐ ๋น ๋ฅด๊ธฐ : {loop_duration / vectorized_duration:.2f}๋ฐฐ ๋น ๋ฆ")
import numpy as np # ๋ฐฐ์ด ์์ฑ array = np.array([[1, 2, 3], [4, 5, 6]]) # ๋ฐ์ดํฐํ(dtype) ํ์ธ print("Data Type (dtype):", array.dtype) # ๋ชจ์(shape) ํ์ธ print("Shape (shape):", array.shape) # ์ฐจ์(ndim) ํ์ธ print("Number of Dimensions (ndim):", array.ndim) # ๋ฐฐ์ด์ ํ/์ด ๋ณํ (transpose) print("Transposed Array (T):") print(array.T) # ๋ฐฐ์ด์ ์์ ์(size) ํ์ธ print("Total Number of Elements (size):", array.size) # ๋ฐฐ์ด์ ์ ์ฒด ๋ฐ์ดํธ ์(nbytes) ํ์ธ print("Total Bytes (nbytes):", array.nbytes)
import numpy as np # 2D ๋ฐฐ์ด ์์ฑ array_2d = np.array([[1, 2, 3], [4, 5, 6]]) # ๋ฐฐ์ด์ 1D๋ก ํํํ flattened_array = array_2d.flatten() print("Original 2D Array:") print(array_2d) print("\nFlattened 1D Array:") print(flattened_array)
import numpy as np # 1D ๋ฐฐ์ด array_1d = np.array([10, 20, 30, 40, 50]) print("1D ๋ฐฐ์ด์์ 3๋ฒ์งธ ์์:", array_1d[2]) # 2D ๋ฐฐ์ด array_2d = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]]) print("2D ๋ฐฐ์ด์์ (2, 3) ์์:", array_2d[1, 2])
import numpy as np # 2D ๋ฐฐ์ด array_2d = np.array([[0, 1, 2, 3], [4, 5, 6, 7], [8, 9, 10, 11], [12, 13, 14, 14]]) print("๊ฐ์ฌ๋์ด ์ํค์ ๊ฒ :") print(array_2d[0:2:1, 0:2:1])