Hi,
I am trying to compare two datasets in sas using proc compare. One of the character variable is not matching and shows difference however when i actual see the record the values are correct. They are defined as below in both base and comparing data set.
Base dataset --VARIABLE1 ;TYPE-Char Len-16 Format-$16. Informat-$16.
Comp dataset --VARIABLE1 ;TYPE-Char Len-23 Format-$23. Informat-$23.
Also, attached is the output for couple of records.
Thank in advance.
Regards,
To be sure, I'd add character variables of double length (eg 23 -> 46) and use put(...,$hex46.) format to convert the contents of your variables to hex notation. This allows detection of un-displayable characters or leading blanks.
Hi,
Thanks for your reply. Actually the datasets are coming from two different databases Oracle and Teradata. And what if I dont want to change the format in the source datasets. Any other way of doing it.
Regards,
I'd be MASSIVELY surprised if you could ever get a solid match in SAS when comparing ORACLE and TERADATA, as it involves three different environments.
Pull the tables into SAS, run the compare, and then investigate the differences. This might give you clues what processes are necessary (during the import into SAS) to get the tables to a "common denominator".
Don't miss out on SAS Innovate - Register now for the FREE Livestream!
Can't make it to Vegas? No problem! Watch our general sessions LIVE or on-demand starting April 17th. Hear from SAS execs, best-selling author Adam Grant, Hot Ones host Sean Evans, top tech journalist Kara Swisher, AI expert Cassie Kozyrkov, and the mind-blowing dance crew iLuminate! Plus, get access to over 20 breakout sessions.
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.