Если вам нужно что-то с именем столбца, которое будет печататься в формате столбца, используйте один столбец matrix
или data.frame
:
vector <- matrix( c(1,2,3,4), dimnames=list(NULL, "a") )
vector <- data.frame( a=c(1,2,3,4) )
Существует тип объекта 1d, но довольно запутанныйэто требует, чтобы присвоение единственного значения измерения было его длиной.См .:
?dim
dim(vector)=1L
Error in dim(vector) = 1L :
dims [product 1] do not match the length of object [4]
> dim(vector)=4L
> vector
[1] 1 2 3 4
> str(vector)
num [1:4(1d)] 1 2 3 4
На самом деле страница справки по функции dim, по-видимому, не документирует требование, что произведение результата dim будет равно длине.Я предполагаю, что ваше домашнее задание было предназначено для того, чтобы вы прочитали справочную страницу dim, а затем обнаружили (как я только что сделал), что объект one-d возможен, но немного сбивает с толку.
Как оказалосьразличие между векторами строк и столбцов не применяется:
> vector %*% matrix(1:16,4)
[,1] [,2] [,3] [,4]
[1,] 30 70 110 150
> t(vector) %*% matrix(1:16,4)
[,1] [,2] [,3] [,4]
[1,] 30 70 110 150
> t(vector) %*% matrix(1:16,4) %*% vector
[,1]
[1,] 1100
> vector %*% matrix(1:16,4) %*% vector
[,1]
[1,] 1100