Help using Base SAS procedures

One long line of text - comma delimtied, no carriage returns, 37 variables

Reply
Occasional Contributor
Posts: 12

One long line of text - comma delimtied, no carriage returns, 37 variables

Hey guys,

 

I have having trouble finding a solution for a problem I have having with a very large single line feed comma delimited text file.

 

I have tried termstr, and several of the solutions for similar issued here and on other boards.I don't think it has carriage returns, just one long string with commas.

 

It has 37 variables, and I have managed to parse the these out using prx. However, getting the rest is proving difficult.

 

It was generated from Clementine. I've asked for another version pipe delimited / csv however that might take some time.

 

What I need help with is a loop that go until the end of string (2.3 GB) that  

infiles every 37 sets of delimiters in a ob then I can parse

or

infile each delimter times 37 and after 37 create new observaiton, then repeat until end of string.

 

 Any help would be much apprechiated.

 

Michael

 

 

 

 

 

 

Super User
Super User
Posts: 7,050

Re: One long line of text - comma delimtied, no carriage returns, 37 variables

Just use RECFM=N.

 

data want ;
   infile 'myfile' dsd dlm=',' recfm=n;
   input var1-var37 ;
run;
Occasional Contributor
Posts: 12

Re: One long line of text - comma delimtied, no carriage returns, 37 variables

[ Edited ]

Thank Tom, I didn't know it would be that simple.

 

Is there a way to limit obs out so I can test it? FIRSTOBS / OBS are not suitable as it reads it as one line in.

 

I am unfamilar with this part of the data step. I have tried a small loop, but does the input hit the PVD as one iteration?

 

data want;

infile oneline dsd dlm=',' recfm=n;

n=0;

do until (N>=5);

input var1-var37 $;

N+1;

end;

run;

Ask a Question
Discussion stats
  • 2 replies
  • 297 views
  • 1 like
  • 2 in conversation