BookmarkSubscribeRSS Feed
deleted_user
Not applicable
Hi, I believe there is a way to do this and I don't remember from all the training classes on how this is done. My problem is I have a field with 200+ rows where the date is coming in, for example like 20060415. How do I convert this to become 04152006 w/o manually having to go through every single row?
4 REPLIES 4
Resa
Pyrite | Level 9
There are various way to get the result you want.

If you would like to have a numeric result:
Create a calculated column with the following expression: INPUT(,YYMMDD8.)
Set the format of the calculated column to MMDDYYN8.
This wil give you a numeric column that will display the date a you want.

If you would like to have a character result:
Create a calculated column with the following expression: PUT(INPUT(,YYMMDD8.),MMDDYYN8.)

Hope this will help you.
Kind regards,
Resa Drijsen
deleted_user
Not applicable
I'm sorry this might sound like a stupid question but how do you calculate a column? I've looked through the SAS EG book and I couldn't find any help on calculating a column.

Thanks!
Resa
Pyrite | Level 9
Hi,

If you are using EG 3.0.
Create a query on the base dataset and the query builder will appear.

In the "Select and Sort" tab all the columns of the base dataset are mentioned. In addition to this you can add calculated columns by pressing the "New ..." button.

A column definition GUI will appear. In this GUI there is an "Expression" window with a "change..." button next to it.
Click on it and the "Expression Builder" will appear.
Here you can either type in expressions or use the interface to enter expressions.

I hope this will help you to get what you want.
Kind regards.
DaveShea
Lapis Lazuli | Level 10
Hi Seng,

If you are posting to this group I assume that you are a SAS Enterprise Guide user (hopefully version 4 as that is the only version I have to hand). If you are not using Enterprise Guide this reply will not make sense.

I am also assuming that you start with a text file that you want to import into SAS.

If this is the case, I hope that the following steps help:

1) Click on File->Import Data....
2) In the Open Data dialog box point to the location and name of your text file containing your date information (Remember to set the Files of Type drop down menu to point to the type of file that you wish to import)
3)In the Import Data dialog box click on the Region to Import page (use the panel on the left hand side).
3.1) Tell the wizard whether your file has column headings in the first row.
3.2) Tell the wizard whether to import the entire file.
4) Click on the Text Format page (use the panel on the left hand side).
4.1) Tell the wizard how the various fields of your text file are delimited (ie comma, tab, space etc.)
5) Click on the Column Options page (use the panel on the left hand side).
5.1) For the Read-In Format choose the Date category entry: YYMMDDw.d and in the text boxes at the bottom of the dialog, tell the wizard that the Overall Width of your date values will be 8 (ie yyyymmdd)
5.2 For the Display Format choose the Date category entry of your choice but you probably want MMDDYYNw.d which will give you a value in the mmddyyyy style. Choose an Overall Width of 8. The N as the final character of the format name above tells SAS not to put any separators between the Year, the Month and the Day elements.

Well those steps should get you going but you really ought to read up on how the SAS System stores date and time and datetime values. Once you have read in a string of letters and/or numbers and told SAS they are a date, SAS will store them as an integer representing the number of days offset from 01Jan1960 and the world is your Oyster from there. It is important to note that the Display Format is just that, a mask that sits over the real integer value just for the benefit of us humans.

Have a look at:
http://support.sas.com/onlinedoc/912/getDoc/basess.hlp/a001397898.htm

for more information on how SAS reads, stores and displays dates.

Hope that this helps.

Cheers.

Dave Shea
Wellington.

sas-innovate-2024.png

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.

 

Register now!

SAS Enterprise Guide vs. SAS Studio

What’s the difference between SAS Enterprise Guide and SAS Studio? How are they similar? Just ask SAS’ Danny Modlin.

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
  • 4 replies
  • 1651 views
  • 0 likes
  • 3 in conversation