【问题标题】:R: How to fill in values in a new column using the values of another columnR:如何使用另一列的值填充新列中的值
【发布时间】:2020-08-31 09:42:30
【问题描述】:

我在 R 中有一个数据集,其中有一列名为 event_date

变量如下所示:

31-Dec-18 
30-Dec-18
28-Dec-18

等等。

我想创建一个名为date 的新列,在其中分隔出活动的日期。所以它看起来像:

31
30
28

我对使用 R 很陌生,所以我想知道 for 循环是否是要走的路,或者是否有我不知道的更有效的方法。

【问题讨论】:

  • 欢迎来到 SO。如果您的问题可重现,包括可用于测试和验证可能解决方案的样本输入和所需输出,则更容易为您提供帮助查看minimal reproducible exampleHow to Ask

标签: r dataframe dataset


【解决方案1】:

如果日期是字符类型

df$date <- sub(".*-.*-(.*)","\\1", df$event_date)

否则,您可以考虑在 R 中创建数据类型对象。

【讨论】:

    【解决方案2】:

    如果天数是两位数,那么substr 会更快

    df$day <- substr(df$event_date, 1, 2)
    

    或者转换为Date类并提取day

    df$day <- format(as.Date(df$event_date, "%d-%b-%y"), "%d")
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-11-24
      • 1970-01-01
      • 2019-01-21
      • 2022-08-03
      • 2021-09-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多