Как я могу импортировать массив в python (numpy.arry) из файла, и таким образом файл должен быть записан, если он еще не существует.
Например, сохраните матрицу в файле, а затем загрузите ее.
Как я могу импортировать массив в python (numpy.arry) из файла, и таким образом файл должен быть записан, если он еще не существует.
Например, сохраните матрицу в файле, а затем загрузите ее.
Оформить запись в списке numpy. Вот запись в .loadtxt()
>>> from numpy import *
>>>
>>> data = loadtxt("myfile.txt") # myfile.txt contains 4 columns of numbers
>>> t,z = data[:,0], data[:,3] # data is 2D numpy array
>>>
>>> t,x,y,z = loadtxt("myfile.txt", unpack=True) # to unpack all columns
>>> t,z = loadtxt("myfile.txt", usecols = (0,3), unpack=True) # to select just a few columns
>>> data = loadtxt("myfile.txt", skiprows = 7) # to skip 7 rows from top of file
>>> data = loadtxt("myfile.txt", comments = '!') # use '!' as comment char instead of '#'
>>> data = loadtxt("myfile.txt", delimiter=';') # use ';' as column separator instead of whitespace
>>> data = loadtxt("myfile.txt", dtype = int) # file contains integers instead of floats
Другим вариантом является numpy.genfromtxt
, например:
import numpy as np
data = np.genfromtxt("myfile.dat",delimiter=",")
Это сделает data
массив numpy с таким количеством строк и столбцов, что и в вашем файле
(Я знаю, что вопрос старый, но я думаю, что это может быть хорошим как ссылка для людей с похожими вопросами)
Если вы хотите загружать данные из ASCII/текстового файла (который имеет преимущество или более или менее понятен для человека и легко разбирается в другом программном обеспечении), numpy.loadtxt, вероятно, вы хотите:
Если вы просто хотите быстро сохранить и загрузить массивы/матрицы numpy в файл и из него, взгляните на numpy.save и numpy.load:
В Python, сохраняя пустой список python как numpy.array, а затем сохраняя его в файл, затем загружая его обратно и преобразовывая его обратно в список, вы получаете некоторые трюки преобразования. Путаница заключается в том, что списки python не являются тем же самым, что и numpy.arrays:
import numpy as np
foods = ['grape', 'cherry', 'mango']
filename = "./outfile.dat.npy"
np.save(filename, np.array(foods))
z = np.load(filename).tolist()
print("z is: " + str(z))
Отпечатки:
z is: ['grape', 'cherry', 'mango']
который хранится на диске в качестве имени файла: outfile.dat.npy
Важными методами здесь являются функции преобразования tolist()
и np.array(...)
.
Посмотрите кулинарная книга SciPy. Он должен дать вам представление о некоторых основных методах импорта/экспорта данных.
Если вы сохраняете/загружаете файлы из своих собственных программ Python, вы также можете рассмотреть модуль Pickle, или cPickle.