【问题标题】:creating a dummy variable based on dates for longitudinal data in R基于日期为R中的纵向数据创建一个虚拟变量
【发布时间】:2022-06-28 23:38:37
【问题描述】:

我在 R 中有纵向患者数据。我想创建 new_dummy 变量,就像我在下表中演示的那样。如果consultation_date 变量小于registration_date 变量,我希望dummy_variable 值为0;如果consultation_date 变量大于registration_date 变量,我希望dummy_variable 值为1。

patid consultation_date registration_date new_dummy
1 07/07/2016 07/07/2018 0
1 07/07/2019 07/07/2018 1
2 14/08/2016 07/09/2016 0
3 07/05/2015 19/02/2016 0
3 02/12/2016 19/02/2016 1

【问题讨论】:

  • 试试df1$new_dummy <- with(df1, +(as.Date(consultation_date, "%d/%m/%Y") < as.Date(registration_date, "%d/%m/%Y")))

标签: r longitudinal


【解决方案1】:

如果您的列属于正确的类 (Date),您可以简单地使用

df$new_dummy <- as.numeric(df$consultation_date < df$registration_date)

要将它们转换为正确的格式,它是:

df$consultation_date <- as.Date(df$consultation_date)
df$registration_date <- as.Date(df$registration_date)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-01-19
    • 1970-01-01
    • 2021-07-20
    • 1970-01-01
    • 2020-09-02
    • 1970-01-01
    • 2017-05-31
    相关资源
    最近更新 更多