import an array in python

后端 未结 5 1949
清歌不尽
清歌不尽 2020-12-28 19:13

How can I import an array to python (numpy.arry) from a file and that way the file must be written if it doesn\'t already exist.

For example, save out a matrix to a

相关标签:
5条回答
  • 2020-12-28 19:54

    Have a look at SciPy cookbook. It should give you an idea of some basic methods to import /export data.

    If you save/load the files from your own Python programs, you may also want to consider the Pickle module, or cPickle.

    0 讨论(0)
  • 2020-12-28 20:01

    Checkout the entry on the numpy example list. Here is the entry on .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
    
    0 讨论(0)
  • 2020-12-28 20:06

    (I know the question is old, but I think this might be good as a reference for people with similar questions)

    If you want to load data from an ASCII/text file (which has the benefit or being more or less human-readable and easy to parse in other software), numpy.loadtxt is probably what you want:

    • http://docs.scipy.org/doc/numpy/reference/generated/numpy.loadtxt.html

    If you just want to quickly save and load numpy arrays/matrices to and from a file, take a look at numpy.save and numpy.load:

    • http://docs.scipy.org/doc/numpy/reference/generated/numpy.save.html
    • http://docs.scipy.org/doc/numpy/reference/generated/numpy.load.html
    0 讨论(0)
  • 2020-12-28 20:09

    In Python, Storing a bare python list as a numpy.array and then saving it out to file, then loading it back, and converting it back to a list takes some conversion tricks. The confusion is because python lists are not at all the same thing as 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))
    

    This prints:

    z is: ['grape', 'cherry', 'mango']
    

    Which is stored on disk as the filename: outfile.dat.npy

    The important methods here are the tolist() and np.array(...) conversion functions.

    0 讨论(0)
  • 2020-12-28 20:12

    Another option is numpy.genfromtxt, e.g:

    import numpy as np
    data = np.genfromtxt("myfile.dat",delimiter=",")
    

    This will make data a numpy array with as many rows and columns as are in your file

    0 讨论(0)
提交回复
热议问题