SAS数字日期格式至年月日

SAS数字日期格式至年月日,sas,Sas,嗨,关于SAS的基本问题 我的数据集的日期格式为yyyymmdd,类型为数字。我想转换列,使日期为dd/mm/yyyy。可能是一个非常基本的代码,但我对SAS非常陌生 干杯proc-sql; 更改表格 修改格式=ddmmyys10。; 退出 对于斜杠分隔符,ddmmyys10中有“s”。格式 或者: proc datasets lib=<library> nolist nodetails; modify <table>; format <column> dd

嗨,关于SAS的基本问题

我的数据集的日期格式为yyyymmdd,类型为数字。我想转换列,使日期为dd/mm/yyyy。可能是一个非常基本的代码,但我对SAS非常陌生

干杯

proc-sql;
更改表格
修改格式=ddmmyys10。;
退出
对于斜杠分隔符,ddmmyys10中有“s”。格式

或者:

proc datasets lib=<library> nolist nodetails;
modify <table>;
format <column> ddmmyys10.;
quit;
proc datasets lib=nolist节点细节;
修改
格式为ddmmyys10。;
退出
proc-sql;
更改表格
修改格式=ddmmyys10。;
退出
对于斜杠分隔符,ddmmyys10中有“s”。格式

或者:

proc datasets lib=<library> nolist nodetails;
modify <table>;
format <column> ddmmyys10.;
quit;
proc datasets lib=nolist节点细节;
修改
格式为ddmmyys10。;
退出
proc-sql;
更改表格
修改格式=ddmmyys10。;
退出
对于斜杠分隔符,ddmmyys10中有“s”。格式

或者:

proc datasets lib=<library> nolist nodetails;
modify <table>;
format <column> ddmmyys10.;
quit;
proc datasets lib=nolist节点细节;
修改
格式为ddmmyys10。;
退出
proc-sql;
更改表格
修改格式=ddmmyys10。;
退出
对于斜杠分隔符,ddmmyys10中有“s”。格式

或者:

proc datasets lib=<library> nolist nodetails;
modify <table>;
format <column> ddmmyys10.;
quit;
proc datasets lib=nolist节点细节;
修改
格式为ddmmyys10。;
退出


您试过什么了吗?你的代码在哪里?你试过什么了吗?你的代码在哪里?你试过什么了吗?你的代码在哪里?你试过什么了吗?你的代码在哪里?我已经能够利用这个希望获得一些成功,谢谢你的帮助。如果格式是datetime15,您有什么建议吗。?到目前为止,它存储为3094:00:00,我喜欢ddmmyys10格式。但由于某些原因,它总是将日期转换为数百万的长数字。如果当前格式为datetime.,则这些值很可能代表datetime,而不仅仅是date。对于SAS,datetime值是自1960年1月1日起的秒数,而对于date,则是天数。因此,您需要通过运行
procsql“强制转换”从datetime到date的值;更新。set=DATEPART();退出在此之后,ddmmyys10。将显示正确的日期。我无法使其正常工作。将设置vardate=datepart(vardate);语法正确吗?或者我应该在datepart()中放置什么?
proc-sql;更新mylib.mytable set vardate=DATEPART(vardate);退出没有运气。无论如何,谢谢你。代码确实有效…但我认为我导入数据的方式肯定有错误。我已经能够利用这个希望获得一些成功,谢谢你的帮助。如果格式是datetime15,您有什么建议吗。?到目前为止,它存储为3094:00:00,我喜欢ddmmyys10格式。但由于某些原因,它总是将日期转换为数百万的长数字。如果当前格式为datetime.,则这些值很可能代表datetime,而不仅仅是date。对于SAS,datetime值是自1960年1月1日起的秒数,而对于date,则是天数。因此,您需要通过运行
procsql“强制转换”从datetime到date的值;更新。set=DATEPART();退出在此之后,ddmmyys10。将显示正确的日期。我无法使其正常工作。将设置vardate=datepart(vardate);语法正确吗?或者我应该在datepart()中放置什么?
proc-sql;更新mylib.mytable set vardate=DATEPART(vardate);退出没有运气。无论如何,谢谢你。代码确实有效…但我认为我导入数据的方式肯定有错误。我已经能够利用这个希望获得一些成功,谢谢你的帮助。如果格式是datetime15,您有什么建议吗。?到目前为止,它存储为3094:00:00,我喜欢ddmmyys10格式。但由于某些原因,它总是将日期转换为数百万的长数字。如果当前格式为datetime.,则这些值很可能代表datetime,而不仅仅是date。对于SAS,datetime值是自1960年1月1日起的秒数,而对于date,则是天数。因此,您需要通过运行
procsql“强制转换”从datetime到date的值;更新。set=DATEPART();退出在此之后,ddmmyys10。将显示正确的日期。我无法使其正常工作。将设置vardate=datepart(vardate);语法正确吗?或者我应该在datepart()中放置什么?
proc-sql;更新mylib.mytable set vardate=DATEPART(vardate);退出没有运气。无论如何,谢谢你。代码确实有效…但我认为我导入数据的方式肯定有错误。我已经能够利用这个希望获得一些成功,谢谢你的帮助。如果格式是datetime15,您有什么建议吗。?到目前为止,它存储为3094:00:00,我喜欢ddmmyys10格式。但由于某些原因,它总是将日期转换为数百万的长数字。如果当前格式为datetime.,则这些值很可能代表datetime,而不仅仅是date。对于SAS,datetime值是自1960年1月1日起的秒数,而对于date,则是天数。因此,您需要通过运行
procsql“强制转换”从datetime到date的值;更新。set=DATEPART();退出在此之后,ddmmyys10。将显示正确的日期。我无法使其正常工作。将设置vardate=datepart(vardate);语法正确吗?或者我应该在datepart()中放置什么?
proc-sql;更新mylib.mytable set vardate=DATEPART(vardate);退出没有运气。无论如何,谢谢你。代码确实起作用了……但我想我导入数据的方式一定有错误。