BookmarkSubscribeRSS Feed
BrahmanandaRao
Lapis Lazuli | Level 10
data a;
infile "/home/u35263349/if.txt";
input name$ city$ ;
if city='hyderabad' ; run;

1.which statement works  if statetment or where statement in infile statement read the external source data

please find below attachment txt.file

5 REPLIES 5
ballardw
Super User

If you run this code:

 

data a;
infile "/home/u35263349/if.txt";
input name$ city$ ;
run;

You will see that the value in the data is read as "hyderaba". The length is 8 characters because when you  use Input city $; SAS defaults to reading 8 characters. You need to provide an informat longer than 8 OR tell SAS the variable should be longer. So you did not have the value long enough to match your If condition.

 

 

This uses an informat to read City as a 10 character variable:

 

data a;
infile "/home/u35263349/if.txt";
input name$ city :$10. ;
run;

This sets the length of Name and City to 10 characters when read:

data a;
infile "/home/u35263349/if.txt";
length name city $10;
input name$ city $ ;
run;

 

 

Astounding
PROC Star
You need IF, not WHERE.
The IF statement can be used by any DATA step.
The WHERE statement requires that the incoming data is already a SAS data set. Since your source of incoming data is text and not a SAS data set, you cannot use WHERE.
BrahmanandaRao
Lapis Lazuli | Level 10

which statement works in infile statement IF or where

 

SAS Innovate 2025: Save the Date

 SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!

Save the date!

Mastering the WHERE Clause in PROC SQL

SAS' Charu Shankar shares her PROC SQL expertise by showing you how to master the WHERE clause using real winter weather data.

Find more tutorials on the SAS Users YouTube channel.

Discussion stats
  • 5 replies
  • 752 views
  • 0 likes
  • 4 in conversation