嗨,我的資料中有此列
df <- structure(list(validation_date = structure(c(18817, 18818, 18820,
18820, 18821, 18842, 18843, 18843, 18843, 18843, 18843, 18890,
18890, 18890, 18893, 18893, 18893, 18858, 18858, 18858, 18858,
18858, 18859, 18831, 18831, 18831, 18831, 18831, 18834, 18830,
18830, 18830, 18830, 18830, 18831, 18887, 18890, 18890, 18890,
18890, 18890), class = "Date")), row.names = c(NA, -41L), class = c("tbl_df",
"tbl", "data.frame"))
我將創建一個名為classifiers 的新列,其中包含3 個值,以validation_date 列為條件,其中2021-07-26 之前的日期名稱為classifier_1,2021-07-26 之后和2021-08-19 之前的日期名稱為classifier_2 19-08-2021 之后的日期名稱為classifier_3。
謝謝
uj5u.com熱心網友回復:
請在下面找到使用的解決方案 data.table
正品
- 代碼
library(data.table)
library(lubridate)
setDT(df)[, classifiers := fcase(validation_date < ymd("2021-07-26"), "classifier_1",
validation_date >= ("2021-07-26") & validation_date < ymd("2021-08-19"), "classifier_2",
validation_date >= ymd("2021-08-19"), "classifier_3")][]
- 輸出
#> validation_date classifiers
#> 1: 2021-07-09 classifier_1
#> 2: 2021-07-10 classifier_1
#> 3: 2021-07-12 classifier_1
#> 4: 2021-07-12 classifier_1
#> 5: 2021-07-13 classifier_1
#> 6: 2021-08-03 classifier_2
#> 7: 2021-08-04 classifier_2
#> 8: 2021-08-04 classifier_2
#> 9: 2021-08-04 classifier_2
#> 10: 2021-08-04 classifier_2
#> 11: 2021-08-04 classifier_2
#> 12: 2021-09-20 classifier_3
#> 13: 2021-09-20 classifier_3
#> 14: 2021-09-20 classifier_3
#> 15: 2021-09-23 classifier_3
#> 16: 2021-09-23 classifier_3
#> 17: 2021-09-23 classifier_3
#> 18: 2021-08-19 classifier_3
#> 19: 2021-08-19 classifier_3
#> 20: 2021-08-19 classifier_3
#> 21: 2021-08-19 classifier_3
#> 22: 2021-08-19 classifier_3
#> 23: 2021-08-20 classifier_3
#> 24: 2021-07-23 classifier_1
#> 25: 2021-07-23 classifier_1
#> 26: 2021-07-23 classifier_1
#> 27: 2021-07-23 classifier_1
#> 28: 2021-07-23 classifier_1
#> 29: 2021-07-26 classifier_2
#> 30: 2021-07-22 classifier_1
#> 31: 2021-07-22 classifier_1
#> 32: 2021-07-22 classifier_1
#> 33: 2021-07-22 classifier_1
#> 34: 2021-07-22 classifier_1
#> 35: 2021-07-23 classifier_1
#> 36: 2021-09-17 classifier_3
#> 37: 2021-09-20 classifier_3
#> 38: 2021-09-20 classifier_3
#> 39: 2021-09-20 classifier_3
#> 40: 2021-09-20 classifier_3
#> 41: 2021-09-20 classifier_3
#> validation_date classifiers
由reprex 包(v2.0.1)于 2021 年 11 月 16 日創建
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/358119.html
上一篇:如何在R中包含一個字串和一個數字的一??組選定列上執行rowsums?
下一篇:資料框中從長格式到寬格式
