【问题标题】:Convert a dynamic date column from a dynamic dataframe as a factor将动态数据框中的动态日期列转换为一个因素
【发布时间】:2022-12-13 01:18:05
【问题描述】:

我正在通过一个循环动态创建 3 个数据帧,以在 3 个粒度级别上计算变量 Nb_Active_Accounts:每日/每周/每月;我正在尝试以动态方式将动态日期列转换为因素。
如果我只有一个简单的每周级别的数据框,该数据框将被命名为Active_Accounts_Weekly看起来像下面这样:

并将 Week_Date 从日期到一个因素我只需要这样做:

Active_Accounts_Weekly$Week_Date <- as.factor(Active_Accounts_Weekly$Week_Date)

但是由于我通过在循环中使用get()assign() 等函数动态创建 3 个不同的数据帧,我试图分别将 Day_Date/Week_Date/Month_Date 列转换为一个因子。
动态数据帧表示如下所示:get( paste0("Active_Accounts_", date_granularity$var_name[i] ) ),其中var_name分别等于"Daily"/"Weekly"/"Monthly"

这样做的合适方法是什么?

【问题讨论】:

    标签: r for-loop assign


    【解决方案1】:

    我们可以使用mget将所有数据放入list,然后使用lapplytransform循环list并将数据保存在list

    lst1 <- lapply(mget(paste0("Active_Accounts_", date_granularity$var_name)), 
           transform, Week_Date = factor(Week_Date))
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-04-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多