Split by 2 fifty variables

Reply
Occasional Contributor
Posts: 7

Split by 2 fifty variables

[ Edited ]

Good morning!

 

I have a dataset like this

 

ID                              V1                       V2                V3                        V4                V5                  V6           ..           

a2a2a2a2a2a2a2a 19259999999 19269999999 19269999999 19259999999 19279999999 19289999999    ..     

 

I want to split V1, V2...V50 into two variables like this 

 

ID                              V11     V12       V21       V22     V31       V32                

a2a2a2a2a2a2a2a 1925  9999999  1926  9999999 1926   9999999     etc

 

 

thansk for all!!

Super User
Super User
Posts: 8,979

Re: Split by 2 fifty variables

First question, why do you have a dataset like that.  You won't just find this particular problem harder, you will find all coding with that structure harder.  As such your current question makes no sense.

It is however possible:

data want1 (keep=id var1--var10)
     want2 (keep=id var11--var50);
  set have;
run;

But as I say, it makes no sense.  Normalise the data items (so they go down) and then process them as data elements.

Super Contributor
Posts: 317

Re: Split by 2 fifty variables

If you want split variables, for V1,  use:

v21 = int(V1 / 1e7);
v22 = mod(V1, 1e7);

Super User
Super User
Posts: 8,979

Re: Split by 2 fifty variables

Oh, is that what he meant!  Still doesn't make much sense, but more than splitting variables between datasets.  If they are character then just substr().

Ask a Question
Discussion stats
  • 3 replies
  • 196 views
  • 4 likes
  • 3 in conversation