我有一个数据,它在一列中,混合了所有数据类型,格式。
文字,数字和日期。 我必须将coloumn转换为行。 当我将数据导入到sas 9.3时,日期变成一个数字(字符格式),并且当我尝试使用输入函数进行转换时转置后它没有给出正确的日期。 我得到的观察结果就像日期栏中的41172。 我该如何转换它?
答案 0 :(得分:0)
认为您混淆了数据类型和格式。这两种类型是字符和数字。
日期全部为数字,并存储为SASDATE,即1960年1月1日的偏差,每天代表1。
要显示每个SASDate,您必须将该变量格式化为日期(例如date7,ddmmyy等)。这意味着您首先需要使用输入函数从文本转换为数字(SASDate),然后使用put函数将其格式化为您想要的格式。
如果你正在使用输入功能,你只需要添加其中一种格式和一个put函数:
newvar=put(input(var,8.),date7.);
或者您可以将其保留为input()并使用它:
format var date7.;
在您的数据步骤中。