Hướng dẫn how do you reset an array to zero in python? - làm cách nào để bạn đặt lại một mảng về 0 trong python?

Để tạo ra một mảng numpy trống:

  1. Chỉ định hình dạng của mảng. the shape of the array.
  2. Gọi hàm numpy.empty (). the numpy.empty() function.

Chẳng hạn, hãy để tạo ra một mảng trống mà không có phần tử:

import numpy as np

arr = np.empty(0)

print(arr)

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:

import numpy as np

# Empty 2 x 3 matrix
arr = np.empty([2, 3])

print(arr)

Đầu ra (chứa các giá trị tùy ý do các phần tử không được chỉ định):

array([[1.23674196e-316, 0.00000000e+000, 6.94758172e-310],
       [6.94758172e-310, 0.00000000e+000, 6.94741422e-310]])

Trong hướng dẫn này, bạn học:

  • Cách tạo một mảng trống bằng hàm numpy.empty (). to create an empty array using numpy.empty() function.
  • Ý nghĩa của sự trống rỗng trong bối cảnh mảng numpy. emptiness means in the context of NumPy arrays.
  • Tại sao một mảng thực sự trống rỗng hiếm khi hữu ích? a truly empty array is rarely useful?
  • Tạo một mảng số không sử dụng hàm numpy.zeros (). an array of zeros using the numpy.zeros() function.
  • numpy.empty () vs numpy.zeros (). vs numpy.zeros().

Hàm numpy.empty ()

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à:

numpy.empty(shape, dtype=float, order='C', *, like=None)

Where:

  • Hình dạng mô tả hình dạng của mảng trống. Nó có thể là một tuple hoặc một giá trị số nguyên số ít. describes the shape of the empty array. It can be a tuple or a singular integer value.
  • DTYPE là một tham số tùy chọn xác định kiểu dữ liệu cho các phần tử mảng. Theo mặc định, đây là numpy.float64. is an optional parameter that determines the datatype for the array elements. By default, this is numpy.float64.
  • Đặt hàng là một tham số tùy chọn chỉ định cách lưu trữ dữ liệu đa chiều trong bộ nhớ. Các tùy chọn là: is an optional parameter that specifies how to store the multidimensional data in memory. The options are:
    • ‘C, cho mẫu đơn hàng theo kiểu Cfor C-style row-major form
    • F F cho mẫu số lượng cột theo kiểu Fortran.for Fortran-style column-major form.
  • Giống như là một tham số tùy chọn. Đó là một đối tượng tham chiếu giúp nó có thể tạo các mảng không có màu. is an optional parameter. It is a reference object that makes it possible to create non-NumPy arrays.

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:

import numpy as np

arr = np.empty(0)

print(arr)

Output:

[]

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

Làm thế nào để bạn xóa một giá trị mảng trong Python?

Bạn có thể sử dụng phương thức pop () để loại bỏ một phần tử khỏi mảng.use the pop() method to remove an element from the array.

Làm thế nào để bạn khởi tạo một mảng trong Python với 0?

Hàm Zeros () được sử dụng để trả về một mảng mới có hình dạng và loại đã cho, với số không. is used which returns a new array of given shape and type, with zeros.

Làm thế nào để bạn xóa một mảng trong numpy?

Sử dụng hàm NUMPY np.delete (), bạn có thể xóa bất kỳ hàng và cột nào khỏi mảng numpy ndarray.Chỉ định trục (kích thước) và vị trí (số hàng, số cột, v.v.).Cũng có thể chọn nhiều hàng và cột bằng một lát cắt hoặc danh sách. delete() , you can delete any row and column from the NumPy array ndarray . Specify the axis (dimension) and position (row number, column number, etc.). It is also possible to select multiple rows and columns using a slice or a list.

Làm thế nào để bạn xóa tất cả các mảng trong Python?

Sử dụng hàm del () Del () Bạn có thể xóa một cách chọn lọc các mục tại một chỉ mục đã cho hoặc bạn cũng có thể xóa tất cả các phần tử, làm cho danh sách trống. The del() function you can selectively remove items at a given index or you can also remove all the elements, making the list empty.