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)

Catch up on SAS Innovate 2026

Nearly 200 sessions are now available on demand with the SAS Innovate Digital Pass.

Explore Now →
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
  • 5117 views
  • 0 likes
  • 3 in conversation