数据框看起来像
x <- rep(c("2010-01-01", "2010-01-02", "2010-01-03", "2010-01-04", "2010-01-05", "2010-01-06","2010-01-07"), 10)
y <- rep(c(1,3), 35)
mydata <- data.frame(x,y)
head(mydata, 3)
x y
1 2010-01-01 1
2 2010-01-02 3
3 2010-01-03 1
使用as.Date()
和weekdays()
,我得到&#34;星期一&#34;,&#34;星期二&#34; ...在一个名为$weekday
x y weekday
1 2010-01-01 1 Friday
2 2010-01-02 3 Saturday
3 2010-01-03 1 Sunday
我想要的是制作两个因素组:
一个是c_weekday <- c("Monday", "Tuesday", "Thursday", "Wednesday", "Friday")
另一个是c_weekend <- c("Saturday", "Sunday")
我想循环mydata$weekday
并将值更改为c_weekday
或c_weekend
在此之后,我只有两个因素c_weekday
和c_weekend
来进行进一步的聚合。
答案 0 :(得分:1)
{{1}}
相当于
{{1}}
答案 1 :(得分:0)
我们可以使用%chin%
data.table
执行此操作
library(data.table)
setDT(mydata)[weekday %chin% c_weekday, weekday := "c_weekday"
][weekday %chin% c_weekend, weekday := "c_weekend"][]