这保留了每次工作人员处理该项目的记录,并且一天内可能有几个记录,因为他处理了几件事情。 我有这个系列“WORKSDAYS”:
{
_id: { $ref: T_WORKERS, $id: id},
january: 168,
febrary: 120,
...
}
我需要为每个项目提供类似的东西:
aggregate([
{
$match: {
"project.$id": "03b80b87asdasdasdasd9"
}
},{
$group: {
"_id": "$worker",
"hours":{"$sum":"$hours"}
}
}
])
或者代替1月份放0或1,2月= 02等。 我试过这个,工人给我和项目的总时间,但我想要每个月的工作时间:
.aggregate([
{$match: {
"project.$id": "03b80b8asdasdasdasdasd7"
}
}, {
$group: {
"_id": "$worker",
"month": {
"$sum": {
"$cond": [
{ "$gt": [
{ "$subtract": [ISODate("2018-01-01T00:00:00.000Z"), ISODate("2017-01-01T00:00:00.000Z") ] },
new Date().valueOf() - ( 1000 * 60 * 60 * 24 )
]},
"$hours",
0
]
}
}
}
}])
我也想过,在给他开始和结束日期(例如:1月和12月并加入他们)
library(dplyr)
set.seed(123)
s<- sample (150,100)
data_train<- iris[s,]
data_test<- iris[-s,]
train <-data_train
test <-data_test
#train$Species <- as.factor(as.character(train$Species))
class <- unique(iris$Species)
for(i in 2:length(unique(iris$Species))-1){
for(j in (i+1):length(unique(iris$Species))){
print(paste(class[i],class[j],sep=","))
class_i <- factor(as.factor(class[i]))
class_j <- factor(as.factor(class[j]))
train2 <- rbind(train[match(as.character(train$Species), class_i, nomatch = FALSE), ],
train[match(as.character(train$Species), class_j, nomatch = FALSE), ])
train2
str(train2)
}}