BookmarkSubscribeRSS Feed
cookvyz
Calcite | Level 5

Hi All,

I have a variable with dates listed in a format of 30.03.2002.

I have tried many options without success.

Here are some commands I have worked with:

new date=input(olddate,date9.);

newdate=input(compress(olddate,'.'),date9.);

newdate= INPUT(compress(olddate),date9.);

format newdate date9.;

Any help would be very much appreciated.

Kind Regards,

Karen

2 REPLIES 2
PGStats
Opal | Level 21

Use format anydtdte :

data test;

dateStr = "30.03.2002";

date = input(dateStr, anydtdte10.);

output;

dateStr = "04.03.2002";

date = input(dateStr, anydtdte10.);

output;

format date date9.;

run;

proc print; run;

PG

PG
Kurt_Bremser
Super User

To force a correct format, I would avoid the anydtdte10. format, as it may convert some values in an unexpected fashion (03/02/2002: March 2nd or February 3rd?).

Instead use

newdate = input(olddate,ddmmyy10.);

hackathon24-white-horiz.png

The 2025 SAS Hackathon Kicks Off on June 11!

Watch the live Hackathon Kickoff to get all the essential information about the SAS Hackathon—including how to join, how to participate, and expert tips for success.

YouTube LinkedIn

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
  • 1193 views
  • 1 like
  • 3 in conversation