Services & Resources / Wolfram Forums
-----
 /
MathGroup Archive
1999
*January
*February
*March
*April
*May
*June
*July
*August
*September
*October
*November
*December
*Archive Index
*Ask about this page
*Print this page
*Give us feedback
*Sign up for the Wolfram Insider

MathGroup Archive 1999

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: saving a list.

  • To: mathgroup at smc.vnet.net
  • Subject: [mg18965] Re: saving a list.
  • From: "David Keith" <dkeith at sarif.com>
  • Date: Fri, 30 Jul 1999 01:33:52 -0400
  • Organization: Hevanet Communications
  • References: <7nlolp$bam@smc.vnet.net>
  • Sender: owner-wri-mathgroup at wolfram.com

Hi Dave,

This is a function I for myself. Its complication comes from the fact that I
wanted it to handle arrays of dimension>2 as well.

In[1]:=
writeArray[filename_, arrayname_] := Module[{makeStringList, outfile},
  outfile = OpenWrite[filename];
  makeDepth3[lst_] :=
      Module[{x}, x = lst; While[Depth[x] < 3, x = {x}];
        While[Depth[x] > 3, x = Flatten[x, 1]]; x];
  makeStringList[lst_] :=
      Flatten[{Drop[
            Flatten[Transpose[{Map[ToString, lst],
                  Table[" ", {Length[lst]}]}]], -1], {"\n"}}];
  Scan[WriteString[outfile, Sequence @@ makeStringList[#]] &,
      makeDepth3[arrayname], {1}]; Close[outfile]
]

In[2]:=
a = Table[i j, {i, 4}, {j, 2}]

Out[2]=
{{1, 2}, {2, 4}, {3, 6}, {4, 8}}

In[3]:=
writeArray["tmp.txt", a]

Out[3]=
"tmp.txt"

In[4]:=
!! tmp.txt

1 2
2 4
3 6
4 8


Dave Berube wrote in message <7nlolp$bam at smc.vnet.net>...
>I am writing a program that inputs 2 lists of numbers each with two
>columns, and creates a 3rd list also with two columns.
>
>For Example, lets say that the files file.txt and file2.txt look like this:
>
>file.txt                  file2.txt
>
>1    1.5                  0    3.6
>2    4.6                  2    1.9
>3    6.8                  6    4.2
>
>I can read them into Mathematica with ReadList
>  A = ReadList["file.txt", {Number, Number}]
>  B = ReadList["file2.txt", {Number, Number}]
>
>then I do all my operations that I need to do on them and come up with a
>two column matrix C.
>
>In plain old Mathematica form it looks like, say,
>
>C = {{1, 2.7}, {2, 1.9}, {3, 3.0}}
>
>But I want to get a file, call it file3.txt, that contains just 2 columns,
>like file.txt and file2.txt.
>
>I've tried TableForm and MatrixForm, etc. to format the output and then
>used Save to save it,  but when I open the text file, I get all this junk
>in there (Gridbox, TableForm, and all the braces and stuff actually in the
>text file).
>
>So is there a way for me to have Mathematica save the information as a
>plain old text file with two columns of numbers, no words, no braces, none
>of that junk.
>
>Thanks for any help.
>-Dave Berube
>
>




  • Prev by Date: Clippling of polygons within a defined region
  • Next by Date: Re: Mathematica writing style
  • Previous by thread: Re: saving a list.
  • Next by thread: Re: saving a list.