Re: PutAppend Command and Data Output
- To: mathgroup at smc.vnet.net
- Subject: [mg49762] Re: [mg49695] PutAppend Command and Data Output
- From: DrBob <drbob at bigfoot.com>
- Date: Fri, 30 Jul 2004 06:02:15 -0400 (EDT)
- References: <200407291143.HAA10129@smc.vnet.net>
- Reply-to: drbob at bigfoot.com
- Sender: owner-wri-mathgroup at wolfram.com
In the first set of code, I've duplicated your resulting file (I think). The result isn't a 2x3 matrix at all. The brackets are there because hend, pend, ... are lists (because of the way you defined them).
Clear[hend,pend,shend,spend,aend,cend]
values={hend,pend,shend,spend,aend,cend};
names=ToString/@values;
data={{84.44222381154862}, {17.295098646610068}, {0.9999464544412083} \
,{0.00005354555879104163} ,{0.6314412255157023} ,{0.16406999044034634}};
Put[names,"output.csv"];
{hend,pend,shend,spend,aend,cend}=data;
PutAppend[values,"output.csv"];
ReadList["output.csv"]
{{hend,pend,shend,spend,aend,cend},{{84.4422},{17.2951},{
0.999946},{0.0000535456},{0.631441},{0.16407}}}
In this version, Flatten eliminates the brackets:
Clear[hend,pend,shend,spend,aend,cend]
values={hend,pend,shend,spend,aend,cend};
names=ToString/@values;
Put[names,"output.csv"];
{hend,pend,shend,spend,aend,cend}=Flatten@data;
PutAppend[values,"output.csv"];
ReadList["output.csv"]
{{hend,pend,shend,spend,aend,cend},{
84.4422,17.2951,0.999946,0.0000535456,0.631441,0.16407}}
Flatten@data could be replaced by First/@data, or the definition of each variable could include First, as in hend=h[time]/.First@sol or hend=First[h[time]/.sol.
Bobby
On Thu, 29 Jul 2004 07:43:02 -0400 (EDT), Daniel Kramer <boydkramer at hotmail.com> wrote:
> There should be a simple solution to this problem, but I am stumped.
> Wolfram support is unhelpful as well. I am running a simulation model with
> six differential equations. I would like to store the ending values for
> these six variables in spreadsheet form as I perform sensitivity analyses on
> the parameter values. So I define the ending values for my variables...
>
> hend=Evaluate[h[time]/.sol;
> pend=Evaluate[p[time]/.sol;
> shend=Evaluate[sh[time]/.sol;
> spend=Evaluate[sp[time]/.sol;
> aend=Evaluate[a[time]/.sol;
> cend=Evaluate[c[time]/.sol;
>
> I then append these values to an existing spreadsheet file. The problem is
> that the ending values are always added to my file in a 2 by 3 matrix
> instead of a 1 by 6 row matrix. See the â??PutAppendâ?? command line below and
> the output. I have tried putting the output in a 6 by 1 column matrix and
> this works by using the following in my PutAppend command -
> {{hend},{pend},{shend},{spend},{aend},{cend}}. This works fine but data is
> appended down the spreadsheet instead of in columns which is as cumbersome
> as my original problem. The other minor problem is the brackets in my
> output. I wish they werenâ??t there. Perhaps these two problems are related?
> Are the values in a form that Excel has trouble reading? I would greatly
> appreciate anyoneâ??s help.
>
> PutAppend[{hend,pend,shend,spend,aend,cend},â??output.csvâ??]
>
> hend pend shend spend aend cend
> {{84.44222381154862} {17.295098646610068} {0.9999464544412083}
> {0.00005354555879104163} {0.6314412255157023} {0.16406999044034634}}
>
>
> By the way, if I add the following line as a test, it works perfectly,
> adding a 1 by 6 row vector to the spreadsheet file.
>
> PutAppend[{1,2,3,4,5,6},â??output.csvâ??]
>
> Daniel Kramer
>
> _________________________________________________________________
> Overwhelmed by debt? Find out how to â??Dig Yourself Out of Debtâ?? from MSN
> Money. http://special.msn.com/money/0407debt.armx
>
>
>
--
DrBob at bigfoot.com
www.eclecticdreams.net
- References:
- PutAppend Command and Data Output
- From: "Daniel Kramer" <boydkramer@hotmail.com>
- PutAppend Command and Data Output