将图像的所有特征转换为行向量

时间:2017-08-06 03:31:14

标签: r image classification

我目前有:

MetroStation

我想得到一个带有结果的行向量: 1 * 48

我试过用:

arr<-array(1:3, c(2,4,6))
dim(arr)
#[1] 2 4 6
mg <-data.frame(arr)
dim(mg)
#[1]  2 24
dim(mg2)
#[1]  2 24
dim(mg2)
#[1]  2 24

但结果不会乘以2 * 24。

如何获得结果?

1 个答案:

答案 0 :(得分:1)

将数组转换为矢量,您可以使用以下任何一个:

  > c(arr)
  > as.vector(arr)
  > as.matrix(arr)
  > t(as.matrix(arr))

前两个代码产生一个列向量,而后两个代码产生一个昏暗的48 * 1,1 * 48的矩阵。

如果您首先将其设为数据框,请记住数组的尺寸: 2行。因此,您的数据框必须有两行。这就是它给你2 * 24的原因。但是仍然从这里你可以使它成为一个矢量。 代码as.vector(t(mg))将给出一个向量,但值将在一行而不是一列中读取。因此,对于上面的示例,结果将是1 3 2 1 3 2...而不是1 2 3 1 2 3 ...。你可以通过对mg进行双重转置来解决这个问题。即as.vector(t(t(mg)))c(as.matrix(mg))