MathGroup Archive 1997

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

Search the Archive

Re: ReadList and FortranForm data

  • To: mathgroup at smc.vnet.net
  • Subject: [mg8475] Re: [mg8426] ReadList and FortranForm data
  • From: David Withoff <withoff>
  • Date: Tue, 2 Sep 1997 16:15:12 -0400
  • Sender: owner-wri-mathgroup at wolfram.com

> I have never been able to figure out how to read in data from a text
> file that is separated by spaces with return characters at the end of
> each line.  ie
>
> 1 2 3 4
> 5 6 7 8
> etc.
>
> The big problem is that Mma interprets the spaces as multiplication
> operators.  I have tried specifying spaces as WordSeparators,
> RecordSeparators, but have not been successful.  My work-around is to
> read the whole thing in as a String using the Word option, then manually
> put commas in where the spaces were and use ToExpression to convert to
> numbers again.  Unfortunately, this method fails with Fortran-like data
> since the e-01 are interpreted as exponentials.  Can someone give me the
> syntax to read in space separated data please.

Have you tried something like this?

In[1]:= !!data
1 2 3 4
5 6 7 8
1.7e-12  2.1e17 -5.1 -1.6e99

In[1]:= ReadList["data", Number, RecordLists -> True]

                                            -12        17               99
Out[1]= {{1, 2, 3, 4}, {5, 6, 7, 8}, {1.7 10   , 2.1 10  , -5.1, -1.6 10  }}

I think the key here is to read numbers in Number format rather
than in Expression format.  (Expression format is the default.)

Dave Withoff
Wolfram Research


  • Prev by Date: Re: Mma Package Style Question
  • Next by Date: Re: Re: Mathlink-Excel97
  • Previous by thread: Re: Mma Package Style Question
  • Next by thread: Re: ReadList and FortranForm data