Re: Alternative to DumpSave
- To: mathgroup at smc.vnet.net
- Subject: [mg117050] Re: Alternative to DumpSave
- From: Albert Retey <awnl at gmx-topmail.de>
- Date: Tue, 8 Mar 2011 05:38:35 -0500 (EST)
- References: <201103031059.FAA20715@smc.vnet.net> <AANLkTik9tqxP1gCA+TkYdwFK+SiHX4at+8f-nYDtFqxF@mail.gmail.com> <il2dg8$68d$1@smc.vnet.net>
Hi, > I have tried the .wdx format, but could not get it to work. I have saved > my data as downvalues of variables ("indexed storage", e.g. > var["1"]=Something, var["2"]=SomethingElse), and not as direct > assignments. I could not find a way that exporting to wdx saved these > assignments. > > Any tips on how to Export or Put to a wdx file properly? As others have mentioned it is not clear on how efficient wdx is compared to saving to .m, so it is not clear whether the result is worth the effort. That said, you could extract the actual information that is stored with var and restore it. When you use DownValues to only store data, this would be a starting point: (* prepare example data *) var["p1"] = 5; var["p2"] = {"asdf", 1.6, Plot[x, {x, 0, 1}]}; fname = ToFileName[{$HomeDirectory, "Desktop"}, "test.wdx"]; (* replace actual variable name in case you want to restore to another variable name ... *) Export[fname, DownValues[var] /. var[s_] :> Hold[s]] (* read back data *) data = Import[fname] (* restore data in DownValues, here to another variable newvar *) DownValues[newvar] = Replace[data, Verbatim[RuleDelayed][Verbatim[HoldPattern][Hold[lhs_]], rhs_] :> (HoldPattern[newvar[lhs]] :> rhs), {1}] note that this of course is not equivalent to a save or dumpsave, which also will store definitions of other symbols automatically if necessary. hth, albert
- References:
- Alternative to DumpSave
- From: Thomas Muench <thomas.muench@gmail.com>
- Alternative to DumpSave