【问题标题】:How can I know the date of birth given the age (in decimals) and the date (of that age) in SAS?给定 SAS 中的年龄(以小数表示)和(该年龄的)日期,我如何知道出生日期?
【发布时间】:2019-10-12 04:58:11
【问题描述】:

创建一个名为“dob”的新变量,它反映一个人的出生日期。年龄值准确地代表了一个人在给定日期的年龄(以年为单位)(即珍妮特怀特在 2018 年 5 月 11 日是 44.2 岁) 这是我的数据集:

DATA mydata1;
input name $15. age date MMDDYY8.;
format date MMDDYY8.;
datalines;
Janet White     44.2 5/11/18  
Bob Greene      32.1 6/14/18
Lou St. Pierren 29.9 4/28/18
;
run;

【问题讨论】:

  • 嗨,欢迎来到堆栈溢出。你试图解决这个问题是什么,你遇到了什么问题?请参阅How to Ask 链接以获取有关如何提出问题并相应更新您的问题的更多详细信息。
  • 如果您的年龄只有十分之一岁,那么您只能在 36 天的窗口内估算出生日期。
  • 因为这听起来像是一个作业问题,所以我不会为你编写代码,但你可能想看看 INTNX 函数。

标签: date sas


【解决方案1】:

Tom 的正确之处在于 DOB 只能在此处估算,而 Craig 的正确之处在于 intnx 函数是要走的路(而且我们不应该做你的作业..)但你的答案应该看起来像:

data mydata2;
set mydata1;
format  DOB date9.;
        DOB = intnx('years',date,-age,'same');
run;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-29
    • 1970-01-01
    • 2011-05-02
    相关资源
    最近更新 更多