【发布时间】:2018-01-19 05:54:38
【问题描述】:
我正在阅读 R 中的 .dat 文件,该文件有 10,800 行和 6 列(如果你想看看,我会给你link to the file)
为了阅读,我使用了这个:
library(dplyr)
library(readr)
tryon <- read.table("F:/1981_01_NAM.dat", header=FALSE)
一旦我有了那个表,我想重新排列它,创建一个有 360 行和 180 列的数组或矩阵。 例如我有这个:
[1] [2] [3]
[1]1 2 3
[2]4 5 6
[3]7 8 9
我想要这个:
[1] [2] [3] [4] [5] [6]
[1]1 2 3 4 5 6
[3]7 8 9 ...
所以通过以下我使用的一些示例:
lon = 360
lat = 180
output2 <- matrix(unlist(tryon), nrow = lon, ncol= lat, byrow = TRUE)
但它并没有做我想要的,如果你使用我上面链接的数据,重新排列后[1,35]位置的值应该是-0.00367983,但我得到一个0。
有什么想法吗?谢谢。
【问题讨论】:
-
您需要包含
t()函数。试试matrix(t(unlist(tyron)),lon,byrow=T)