Hướng dẫn how do you save an array of arrays in python? - làm thế nào để bạn lưu một mảng mảng trong python?

Tôi hiện đang cố gắng lưu một danh sách các mảng numpy vào một tệp duy nhất, một ví dụ về danh sách như vậy có thể có biểu mẫu bên dưới

import numpy as np
np_list = []
for i in range(10):
    if i % 2 == 0:
        np_list.append(np.random.randn(64))
    else:
        np_list.append(np.random.randn(32, 64))

Tôi có thể kết hợp tất cả chúng bằng cách sử dụng một tệp bằng cách sử dụng savez bằng cách lặp qua danh sách nhưng có cách nào khác không? Tôi đang cố gắng tiết kiệm các trọng số được trả về bởi hàm model.get_weights(), đây là danh sách ndarray và sau khi lấy các trọng số từ tệp đã lưu, tôi dự định sẽ tải các trọng số đó vào một mô hình khác bằng cách sử dụng model.set_weights(np_list). Do đó, định dạng của danh sách phải giữ nguyên. Hãy cho tôi biết nếu có ai có một cách thanh lịch để làm điều này.

numpy.save (file, mảng, allow_pickle = true, fix_imports = true) [nguồn]#save(file, arr, allow_pickle=True, fix_imports=True)[source]#

Lưu một mảng vào một tệp nhị phân ở định dạng .npy numpy.

Tham số FileFile, Str hoặc Pathlib.Pathfilefile, str, or pathlib.Path

Tệp hoặc tên tệp mà dữ liệu được lưu. Nếu tệp là một đối tượng tệp, thì tên tệp không thay đổi. Nếu tệp là một chuỗi hoặc đường dẫn, tiện ích mở rộng .npy sẽ được gắn vào tên tệp nếu nó chưa có.

arrarray_likearray_like

Dữ liệu mảng sẽ được lưu.

Cho phép_picklebool, tùy chọnbool, optional

Cho phép lưu các mảng đối tượng bằng dưa chua python. Lý do để không bị dưa chua bao gồm bảo mật (tải dữ liệu dưa chua có thể thực thi mã tùy ý) và tính di động (ví dụ: các đối tượng ngâm có thể không được tải trên các cài đặt python khác nhau, ví dụ nếu các đối tượng được lưu trữ yêu cầu các thư viện không có sẵn và không phải tất cả dữ liệu dồn dưa đều tương thích giữa Python 2 và Python 3). Mặc định: Đúng

FIX_IMPORTSBOOL, Tùy chọnbool, optional

Chỉ hữu ích trong việc buộc các đối tượng trong các mảng đối tượng trên Python 3 được ngâm theo cách tương thích Python 2. Nếu Fix_Imports là đúng, Pickle sẽ cố gắng ánh xạ các tên Python 3 mới cho các tên mô -đun cũ được sử dụng trong Python 2, do đó luồng dữ liệu Pickle có thể đọc được với Python 2.

Ghi chú

Để biết mô tả về định dạng .npy, xem

>>> from tempfile import TemporaryFile
>>> outfile = TemporaryFile()
2.

Bất kỳ dữ liệu nào được lưu vào tệp đều được nối vào cuối tệp.

Ví dụ

>>> from tempfile import TemporaryFile
>>> outfile = TemporaryFile()

>>> x = np.arange(10)
>>> np.save(outfile, x)

>>> _ = outfile.seek(0) # Only needed here to simulate closing & reopening file
>>> np.load(outfile)
array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])

>>> with open('test.npy', 'wb') as f:
...     np.save(f, np.array([1, 2]))
...     np.save(f, np.array([1, 3]))
>>> with open('test.npy', 'rb') as f:
...     a = np.load(f)
...     b = np.load(f)
>>> print(a, b)
# [1 2] [1 3]

Làm thế nào để bạn tạo một mảng các mảng trong Python?

Cách tạo một mảng các mảng trong Python (với các ví dụ)..
Phương pháp 1: Kết hợp các mảng riêng lẻ ..
Phương pháp 2: Tạo mảng mảng trực tiếp ..
Cách truy cập các phần tử trong một mảng mảng ..
Tài nguyên bổ sung ..

Làm cách nào để lưu một mảng dữ liệu trong Python?

Sử dụng numpy.save () để lưu một mảng gọi numpy.Lưu (file_name, mảng) để lưu một mảng numpy vào một tệp có tên file_name.Sử dụng Numpy.Tải (file_name) để tải mảng đã lưu từ file_name. save() to save an array Call numpy. save(file_name, array) to save a numpy array to a file named file_name . Use numpy. load(file_name) to load the saved array from file_name .

Bạn có thể có một mảng mảng python không?

Mảng mảng, hoặc được gọi là mảng đa chiều, có thể được tạo bằng cách truyền các mảng trong hàm numpy.array ().Ví dụ mã sau đây cho chúng ta biết cách tạo một mảng mảng hoặc một mảng đa chiều với Numpy.Hàm mảng () trong Python.can be created by passing arrays in the numpy. array() function. The following code example shows us how to create an array of arrays or a multidimensional array with the numpy. array() function in Python.

Làm cách nào để lưu nhiều mảng numpy?

Lưu một số mảng vào một tệp duy nhất trong không nén.Định dạng NPZ.Cung cấp các mảng làm đối số từ khóa để lưu trữ chúng dưới tên tương ứng trong tệp đầu ra: Savez (fn, x = x, y = y).Nếu các mảng được chỉ định là đối số vị trí, tức là, Savez (Fn, X, Y), tên của chúng sẽ là ARR_0, ARR_1, v.v.savez(fn, x=x, y=y) . If arrays are specified as positional arguments, i.e., savez(fn, x, y) , their names will be arr_0, arr_1, etc.