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.);

sas-innovate-2026-white.png



April 27 – 30 | Gaylord Texan | Grapevine, Texas

Registration is open

Walk in ready to learn. Walk out ready to deliver. This is the data and AI conference you can't afford to miss.
Register now and lock in 2025 pricing—just $495!

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