mic
mic

Reputation: 117

Python: Saving / loading large array using numpy

I have saved a large array of complex numbers using python,

numpy.save(file_name, eval(variable_name))

that worked without any trouble. However, loading,

variable_name=numpy.load(file_name)

yields the following error,

ValueError: total size of new array must be unchanged

Using: Python 2.7.9 64-bit and the file is 1.19 GB large.

Upvotes: 1

Views: 1389

Answers (2)

Darius
Darius

Reputation: 12052

Alternatively you can use pickle:

import pickle

# Saving:
data_file = open('filename.bi', 'w')
pickle.dump(your_data, data_file)
data_file.close()

# Loading:
data_file = open('filename.bi')
data = pickle.load(data_file)
data_file.close()

Upvotes: 0

farhawa
farhawa

Reputation: 10398

There is no problem with the size of your array, you likely didn't opened your file in the right way, try this:

with open(file_name, "rb") as file_:
    variable_name = np.load(file_)

Upvotes: 2

Related Questions