Оператор $ push добавляет указанное значение в массив.
{ $push: {
: , ... } } $ push добавляет поле массива со значением как своим элементом.
Выше ответ отвечает всем требованиям, но я получил его, выполнив следующие
var objFriends = { fname:"fname",lname:"lname",surname:"surname" }; Friend.findOneAndUpdate( { _id: req.body.id }, { $push: { friends: objFriends } }, function (error, success) { if (error) { console.log(error); } else { console.log(success); } }); )
Предположим данные, воспроизводимые в примечании в конце, а также предположим, что каждая дата присутствует хотя бы в одной акции (но не обязательно в какой-либо конкретной акции) 252 обычно используется в течение года, который, вероятно, достаточно близок для большинства применений; однако, учитывая объем данных в вопросе, мы используем 2 для этого примера:
library(zoo)
z <- read.zoo(DF, split = "name")
r <- rollapplyr(z, 2, sd, na.rm = TRUE)
aggregate(r, as.yearmon, tail, 1)
## A B C
## Jan 1985 NA 0.01626346 0.01272792
Lines <- "
date name return
1985-01-01 A -0.044
1985-01-01 C 0.038
1985-01-02 A 0.041
1985-01-02 B -0.005
1985-01-02 C -0.052
1985-01-03 B 0.018
1985-01-03 C -0.034"
library(zoo)
DF <- read.table(text = Lines, header = TRUE)