BookmarkSubscribeRSS Feed
Yuna11
Calcite | Level 5

Hi guys,

I want to delete the rows that have all "(,)", "(,)", "(,)" (i.e., row 10) and then if that's true, always delete row-4;  for example, in the table below, I want to delete row 6-10; 11-15; 16-20; 21-25. Any suggestions? 

 

Would something like below work? 

Data final2;set Final; if _1="(, )" and _2="(, )" and _3="(, )" then Delete="Y";run;
Data final2;
do i=0,1,2,3,4;
if delete="Y" then do p=_n_-i;
set final2 point=p;
delete;
end;
end;
stop;
run;

 

test.png

2 REPLIES 2
Quentin
Super User

This looks like a report, not a dataset.  Did you create this table (using PROC REPORT, PROC TABULATE, or similar?)

 

It's probably a better idea to change the creation of the report, rather than read the report into a dataset and delete rows and then print it out.

BASUG is hosting free webinars Next up: Don Henderson presenting on using hash functions (not hash tables!) to segment data on June 12. Register now at the Boston Area SAS Users Group event page: https://www.basug.org/events.
Yuna11
Calcite | Level 5
Yes, it is a report. Thanks for your suggestion, I will try work on the creation of report then.

sas-innovate-2024.png

Available on demand!

Missed SAS Innovate Las Vegas? Watch all the action for free! View the keynotes, general sessions and 22 breakouts on demand.

 

Register now!

How to Concatenate Values

Learn how use the CAT functions in SAS to join values from multiple variables into a single value.

Find more tutorials on the SAS Users YouTube channel.

Click image to register for webinarClick image to register for webinar

Classroom Training Available!

Select SAS Training centers are offering in-person courses. View upcoming courses for:

View all other training opportunities.

Discussion stats
  • 2 replies
  • 339 views
  • 1 like
  • 2 in conversation