BookmarkSubscribeRSS Feed
grayab
Calcite | Level 5

Hello -

I need to delete observations from my dataset when the entry for a given variable contains a certain character (@).  I want to keep all the other observations.   This seems to require something between an if-then statement and a where contains statement.  I can't seem to find any references to this situation.  Can anyone suggest the best way to do this?

Thank you.

2 REPLIES 2
stat_sas
Ammonite | Level 13

Try something like this

if findc(text,'(@)') then delete;

Peter_C
Rhodochrosite | Level 12

Or sql like

PROC SQL ;

DELETE FROM your.dataset

  WHERE that_variable CONTAINS '@' ;

;

QUIT;

The contains keyword can be replaced with the symbol ? to make the syntax shorter (not neccessarily clearer)

hackathon24-white-horiz.png

The 2025 SAS Hackathon has begun!

It's finally time to hack! Remember to visit the SAS Hacker's Hub regularly for news and updates.

Latest Updates

What is Bayesian Analysis?

Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.

Find more tutorials on the SAS Users YouTube channel.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 2 replies
  • 4698 views
  • 0 likes
  • 3 in conversation