Để tạo ra một mảng numpy trống: Chẳng hạn, hãy để tạo ra một mảng trống mà không có phần tử: Output: Tuy nhiên, việc tạo ra một mảng mà không có các yếu tố hiếm khi có ý nghĩa. Thay vào đó, bạn nên biết và chỉ định hình dạng của mảng cuối cùng trước. Chẳng hạn, hãy để tạo ra một mảng 2D trống: Đầu ra [chứa các giá trị tùy ý do các phần tử không được chỉ định]: Trong hướng dẫn này, bạn học: Hàm numpy.empty [] tạo ra một mảng mà không khởi tạo các mục của nó.numpy.empty[] function creates an array without initializing its entries. Cú pháp hoàn chỉnh để sử dụng chức năng này là: Where: Mỗi tham số này phục vụ một mục đích hữu ích. Tuy nhiên, trong hướng dẫn này, chúng tôi sẽ chỉ tập trung vào tham số hình dạng bắt buộc.shape parameter. Ví dụ: hãy để Lôi tạo một mảng trống với các phần tử bằng không: Output:import numpy as np
arr = np.empty[0]
print[arr]
[]
import numpy as np
# Empty 2 x 3 matrix
arr = np.empty[[2, 3]]
print[arr]
array[[[1.23674196e-316, 0.00000000e+000, 6.94758172e-310],
[6.94758172e-310, 0.00000000e+000, 6.94741422e-310]]]
Hàm numpy.empty []
numpy.empty[shape, dtype=float, order='C', *, like=None]
import numpy as np
arr = np.empty[0]
print[arr]
[]
Noitce rằng điều này hầu như không bao giờ hữu ích!
Điều này là do các phần tử mảng numpy được lưu trữ trong các khối bộ nhớ tiếp giáp.
Để thêm các hàng/cột vào một mảng hiện có, chẳng hạn như mảng trống bạn vừa tạo, mảng cần được sao chép vào một vị trí bộ nhớ mới.
Như bạn có thể tưởng tượng, điều này rất kém hiệu quả, đặc biệt là nếu được thực hiện nhiều lần nhiều lần.
Thay vào đó, bạn nên tạo một mảng trống rỗng có hình dạng của mảng kết quả của bạn.
Để thực hiện điều này, hãy sử dụng hàm numpy.empty [] nhưng chỉ định hình dạng của mảng làm tham số. Sau đó điền vào các giá trị vào mảng trống.numpy.empty[] function but specify the shape of the array as a parameter. Then fill in the values to the empty array.
Chẳng hạn, hãy để tạo ra một mảng 2D trống đại diện cho ma trận 2 x 3:
import numpy as np arr = np.empty[[2, 3]] print[arr]
Output:
array[[[1.23674196e-316, 0.00000000e+000, 6.94758172e-310], [6.94758172e-310, 0.00000000e+000, 6.94741422e-310]]]
Như bạn có thể thấy, bây giờ có một số giá trị ngẫu nhiên trong mảng, mặc dù nó được cho là trống.
Độ trống có nghĩa là các yếu tố trong mảng không được khởi tạo. Nhưng mảng không thực sự trống rỗng. Thay vào đó, các giá trị mảng là tùy ý và phụ thuộc vào những gì xảy ra trong phần bộ nhớ được phân bổ cho chúng.
Nhưng tại sao điều này lại hữu ích?
Như đã giải thích, việc thêm trực tiếp vào một mảng numpy là không thể [thậm chí không sử dụng chức năng numpy.append]. Thay vào đó, bạn không hiệu quả tạo các bản sao của mảng mỗi khi bạn nối các giá trị vào nó.numpy.append function]. Instead, you inefficiently create copies of the array each time you append values to it.
Đây là lý do tại sao đặt cược tốt nhất là tạo ra một mảng trống rỗng có hình dạng có hình dạng mong muốn của mảng bạn muốn tạo. Sau đó, bạn chỉ có thể điền vào các giá trị vào mảng khi bạn đi. Điều này giúp bạn không lãng phí thời gian tính toán trong việc sao chép mảng.
Một cách khác để tạo ra một mảng trống rỗng của người Viking với Numpy là bằng cách sử dụng hàm numpy.zeros [].numpy.zeros[] function.
Hãy cùng xem cách nó hoạt động.
hàm numpy.zeros []
Một cách phổ biến khác để khởi tạo các mảng trống rỗng là sử dụng hàm numpy.zeros [].numpy.zeros[] function.
Điều này trả về một mảng trong đó mỗi phần tử bằng không.
Nguyên tắc làm việc gần như giống hệt với hàm numpy.empty [].numpy.empty[] function.
Chẳng hạn, hãy để khởi tạo một số mảng với số không:
np.zeros[3] # array[[ 0., 0., 0.]] np.zeros[[2, 2]] # array[[[ 0., 0.], [ 0., 0.]]]
Không giống như hàm numpy.empty [], numpy.zeros [] tạo ra một mảng có số không trong đó.numpy.empty[] function, numpy.zeros[] produces an array that has zeros in it.
Cú pháp đầy đủ cho hàm numpy.zeros [] giống hệt với hàm numpy.empty [].numpy.zeros[] function is identical to the numpy.empty[] function.
[]0
Xem các mô tả tham số trong chương trước.
Bây giờ bạn đã biết cách tạo ra các mảng trống rỗng, hãy để thảo luận về cái nào bạn nên sử dụng.
numpy.empty [] vs numpy.zeros []
Cho đến nay, bạn đã học được hai cách tương tự để tạo ra các mảng trống rỗng trống rỗng:
- numpy.empty[]
- numpy.zeros[]
Tuy nhiên, có thể là khó khăn để quyết định sử dụng cái nào.
Hãy để so sánh nhanh giữa hai người để làm cho mọi thứ rõ ràng hơn với bạn.
- Hàm numpy.empty [] không khởi tạo các phần tử trong mảng.numpy.empty[] function does not initialize the elements in the array.
- Hàm numpy.zeros [] khởi tạo các phần tử ở 0.numpy.zeros[] function initializes the elements at 0.
Điều này có nghĩa là hàm numpy.eMpty [] thường nhanh hơn vì nó không dành thời gian khởi tạo các số không. numpy.empty[] function is usually faster because it does not spend time initializing the zeros.
Nhưng đồng thời, sử dụng hàm numpy.empty [], bạn cần đặt thủ công tất cả các giá trị trong mảng. Điều này là do bạn không muốn để lại các giá trị tùy ý treo ở đó.numpy.empty[] function, you need to manually set all the values in the array. This is because you do not want to leave the arbitrary values hanging there.
Do đó, thường là sử dụng hàm Numpy.zeros [] để khởi tạo các mảng trống rỗng, mặc dù nó có thể kém hiệu quả hơn.numpy.zeros[] function to initialize “empty” arrays, even though it can be less efficient.
Sự kết luận
Hôm nay bạn đã học cách tạo ra một mảng numpy trống rỗng.
Để tóm tắt lại, numpy.empty [0] tạo một mảng trống với 0 phần tử.numpy.empty[0] creates an empty array with 0 elements.
[]1
Tuy nhiên, việc tạo một mảng trống mà không có bất kỳ yếu tố nào hiếm khi hữu ích. Điều này là do việc thêm các phần tử vào một mảng numpy có nghĩa là tạo một bản sao của mảng. Điều này thường không hiệu quả.
Thay vào đó, bạn nên tạo một mảng trống với thông tin hình dạng. Nói cách khác, bạn muốn biết kích thước của mảng cuối cùng trước.
[]2
Lưu ý rằng sử dụng numpy.empty [] có nghĩa là các phần tử trống sẽ có các giá trị tùy ý.numpy.empty[] means the empty elements are going to have arbitrary values.
Sử dụng nó một cách thận trọng!
Ngoài ra [và thường là tốt nhất], sử dụng hàm numpy.zeros [] để tạo ra các mảng trống rỗng. Hàm này lấp đầy mảng bằng các số không làm giá trị ban đầu.numpy.zeros[] function for creating “empty” arrays. This function fills the array with zeros as initial values.
Cảm ơn vì đã đọc.
Mã hóa hạnh phúc!
Đọc thêm
Các khóa học khoa học dữ liệu tốt nhất