Re: Reading in a file
- To: mathgroup at smc.vnet.net
- Subject: [mg57045] Re: [mg57024] Reading in a file
- From: János <janos.lobb at yale.edu>
- Date: Thu, 12 May 2005 22:44:29 -0400 (EDT)
- References: <200505120634.CAA09012@smc.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
On May 12, 2005, at 2:34 AM, Swati Shah wrote: > Hi everyone, > I have the following file named "temp.txt" > with the following format: > > ; Restart file created by make.m > ; > NYTOT 140 > STTOT 30 > ; > TIME 0.00000000000000 > 3.1 4.1 > 2.3 4.5 > 3.3 2.5 > 1.1 4.1 > > I want to read this file in, but store the value of NYTOT which is 140 > in a variable nytot, sttot in another variable named sttot > > At the end, I would like the get > nytot = 140 > sttot = 30 > time = 0.0 > > and the rest of the values in another list: > tmpLst = {3.1,4.1,2.3,4.5,3.3,2.5,1.1,4.1} > > I have done the following so far: > > tmpLst=Flatten[Select[Import["temp.txt", "Table"], NumericQ[First > [#]] &]]; > Which gives the tmpLst values but am not sure how I can get the sttot, > nytot and time values? > > Any ideas? > > Thanks in advance One idea: In[1]:= SetDirectory[ "~/Documents/Own solutions"] Out[1]= "/Volumes/Data/janos/Document\ s/Own solutions" In[2]:= files = FileNames["*.txt"] Out[2]= {"Reading from file.txt", "StringToNumbers.txt", "swati.txt", "usgs.txt"} In[3]:= fl = ReadList[files[[3]], Record] Out[3]= {"; Restart file created by \ make.m", ";", "NYTOT 140", "STTOT 30", ";", "TIME 0.00000000000000", "3.1 4.1", "2.3 4.5", "3.3 2.5", "1.1 4.1"} In[4]:= mapfl = (StringSplit[ #1] & ) /@ fl Out[4]= {{";", "Restart", "file", "created", "by", "make.m"}, {";"}, {"NYTOT", "140"}, {"STTOT", "30"}, {";"}, {"TIME", "0.00000000000000"}, {"3.1", "4.1"}, {"2.3", "4.5"}, {"3.3", "2.5"}, {"1.1", "4.1"}} In[5]:= nytot = ToExpression[ Select[mapfl, #1[[1]] == "NYTOT" & ][[ 1,2]]] Out[5]= 140 In[6]:= sttot = ToExpression[ Select[mapfl, #1[[1]] == "STTOT" & ][[ 1,2]]] Out[6]= 30 In[7]:= time = nytot = ToExpression[ Select[mapfl, #1[[1]] == "TIME" & ][[ 1,2]]] Out[7]= 0. János ---------------------------------------------- Trying to argue with a politician is like lifting up the head of a corpse. (S. Lem: His Master Voice)
- References:
- Reading in a file
- From: Swati Shah <swatshah@gmail.com>
- Reading in a file