Альтернатива reshape () для Matlab в R? - PullRequest
0 голосов
/ 14 мая 2018

Я хочу реализовать команду reshape (X3, [], 5), которую я использую в Matlab в R

У меня есть X3.tif файл (200 * 150 * 5) nrows = 200 ncols = 150 и nbands = 5

Я использую эту команду для сохранения tif в datafeame

a <- brick('X3.tif')

X3 - это трехмерные данные, но я хочу сохранить их как матрицу измерений [(200 * 150) * 5] так что у меня (nbands как количество столбцов)

При использовании:

A <- as.data.frame.matrix(a)

хранит матрицу размерности 200 * 150 и исключает nband = 5

Спасибо

1 Ответ

0 голосов
/ 14 мая 2018

Я думаю, что то, что вы ищете, это:

#Sample matrix
myMatrix <- matrix(c(1, 2, 3, 4, 5, 6, 7, 8))
myMatrix 
     [,1]
[1,]    1
[2,]    2
[3,]    3
[4,]    4
[5,]    5
[6,]    6
[7,]    7
[8,]    8

Попробуйте это:

myMatrix_new <- matrix(myMatrix, nrow = 2, byrow = TRUE)
myMatrix_new

     [,1] [,2] [,3] [,4]
[1,]    1    2    3    4
[2,]    5    6    7    8

В справке ?matrix вы можете найти аргументы nrow, ncol, byrow, которые позволяют вам установить количество строк, столбцов и автоматически, если хотите.

...