This should be an easy solution but could not figured it out. How to I select both duplicate IDs if year is associated with 2023?
Have
ID | year |
130177 | 2021 |
130177 | 2022 |
137939 | 2021 |
137939 | 2023 |
160200 | 2022 |
160200 | 2023 |
166898 | 2020 |
166898 | 2023 |
175553 | 2022 |
175553 | 2023 |
want:
ID | year |
137939 | 2021 |
137939 | 2023 |
160200 | 2022 |
160200 | 2023 |
166898 | 2020 |
166898 | 2023 |
175553 | 2022 |
175553 | 2023 |
data HAVE;
input ID year;
cards;
130177 2021
130177 2022
137939 2021
137939 2023
160200 2022
160200 2023
166898 2020
166898 2023
175553 2022
175553 2023
run;
You could use a PROC SQL subquery to find the (distinct?) IDs with records in 2023 and then pull all records matching those IDs.
proc sql; select id, year from have where id in (select id from have where year=2023); quit;
You could use a PROC SQL subquery to find the (distinct?) IDs with records in 2023 and then pull all records matching those IDs.
proc sql; select id, year from have where id in (select id from have where year=2023); quit;
It's finally time to hack! Remember to visit the SAS Hacker's Hub regularly for news and updates.
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.
Ready to level-up your skills? Choose your own adventure.