[Numpy-discussion] save a matrix
Charles R Harris
charlesr.harris at gmail.com
Fri Dec 1 00:33:05 CST 2006
On 11/30/06, Keith Goodman <kwgoodman at gmail.com> wrote:
>
> On 11/30/06, Charles R Harris <charlesr.harris at gmail.com> wrote:
> >
> > It is also possible to put the variables of interest in a dictionary,
> then
> > pickle the dictionary. That way you can also store the variable names.
> >
> > In [27]: f = open(' dump.pkl','w')
> >
> > In [28]: pickle.dump( {'a':a,'b':b}, f)
> >
> > In [29]: f.close()
> >
> > In [30]: f = open('dump.pkl','r')
> >
> > In [31]: mystuff = pickle.load(f)
> >
> > In [32]: f.close()
> >
> > In [34]: mystuff
> > Out[34]:
> > {'a': matrix([[2, 3],
> > [4, 5]]), 'b': matrix([[2, 3],
> > [4, 5]])}
>
> I think I could use that to write a function savematrix(filename, a, b,
> c,...)
>
> Is there a way to write a loadmatrix(filename) that doesn't return
> anything but makes the matrices a, b, c, ... available?
I think there is, that is why I mentioned the saving the environment
thingee. IIRC, I saw code for something like that a couple of years back but
I don't recall the details. Maybe something like:
In [80]: globals()['x'] = [1,2]
In [81]: x
Out[81]: [1, 2]
Then you just have to merge the pickled dictionary with globals(). Like
this:
>>> globals().update(mystuff)
where mystuff is the dictionary where you have your stuff. This could
probably also go something like
>>> globals().update(load(f))
where f contains the pickled dictionary.
Chuck
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://projects.scipy.org/pipermail/numpy-discussion/attachments/20061130/0218b405/attachment-0001.html
More information about the Numpy-discussion
mailing list