Я уверен, что в R. это легко сделать. Я пытался найти точечные продукты в документации R, а также в Интернете, но безуспешно.
Как взять точечное произведение в R приведенной ниже матрицы y и именованный вектор x , используя только именованные элементы в x ?
x <- c(first=1, second=2, third=3)
x2 <- c(first=1, second=2, third=3)
y <- as.matrix(rbind(x2,x2))
y
y %*% x
y% *% x
[1]
х2 14
х2 14
это работает
Теперь я добавляю поле даты к y , и оно завершается ошибкой:
x <- c(first=1, second=2, third=3)
x2 <- c(first=1, second=2, third=3,anchor=as.Date('2017-04-01'))
y <- as.matrix(rbind(x2,x2))
y
y %*% x
Ошибка в x% *% y: несоответствующие аргументы
Это игрушечный пример, но у меня могут быть сотни недружественных полей даты в матрице, поэтому простое удаление anchor
не будет приемлемым решением. Автоматическое удаление любых проблемных полей можно считать действительным.