Desktop productivity for business analysts and programmers

Why won't the data values transfer when I create a numeric variable from a character variable using input()?

Accepted Solution Solved
Reply
Contributor
Posts: 50
Accepted Solution

Why won't the data values transfer when I create a numeric variable from a character variable using input()?

So i am currently trying to recode a data set so that some variables that are currently character, are numeric.  Now keep in mind, even though they are character variables, they still have the values 1,2,3, etc... (no letters).

I am trying to change the formatting so that these are numeric variables and not character variables.

Can anybody see what I'm doing wrong?  I've been looking at it for a while now and can't figure it out.

CODING:

PROC FREQ DATA=WORK.MASTER_FILE5;

  TABLES type ownership ownership1;

  TITLE1 TYPE OWNERSHIP ownership1;

RUN;

*HERE I GET A PERFECTLY REASONABLE LIST OF DATA) BUT WHEN I MAKE MY NEW VARIABLES....*;

DATA work.master_file5_TESTING;

  set work.master_file5;

  newownership = input(ownership,8.);

  newownership1 = input(ownership1,8.);

  newtype = input(type, 8.);

RUN;

PROC FREQ DATA=work.master_file5_TESTING;

  TABLES newownership newownership1 newtype;

RUN;

*THIS PROC FREQ ANALYSIS REPORTS THAT ALL VALUES ARE MISSING*;


Accepted Solutions
Solution
‎09-18-2012 06:25 PM
Respected Advisor
Posts: 4,816

Re: Why won't the data values transfer when I create a numeric variable from a character variable using input()?

Try

DATA work.master_file5_TESTING;

  set work.master_file5;

  newownership = input(left(ownership),8.);

  newownership1 = input(left(ownership1),8.);

  newtype = input(left(type), 8.);

RUN;

PG

PG

View solution in original post


All Replies
Solution
‎09-18-2012 06:25 PM
Respected Advisor
Posts: 4,816

Re: Why won't the data values transfer when I create a numeric variable from a character variable using input()?

Try

DATA work.master_file5_TESTING;

  set work.master_file5;

  newownership = input(left(ownership),8.);

  newownership1 = input(left(ownership1),8.);

  newtype = input(left(type), 8.);

RUN;

PG

PG
🔒 This topic is solved and locked.

Need further help from the community? Please ask a new question.

Discussion stats
  • 1 reply
  • 158 views
  • 0 likes
  • 2 in conversation