Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 如何将60个时间值附加到包含400万个连接的经度和纬度值的列表中?_R_Vector_Concatenation_Vectorization_Large Data - Fatal编程技术网

R 如何将60个时间值附加到包含400万个连接的经度和纬度值的列表中?

R 如何将60个时间值附加到包含400万个连接的经度和纬度值的列表中?,r,vector,concatenation,vectorization,large-data,R,Vector,Concatenation,Vectorization,Large Data,我试图制作一个长度为244466460的向量,它是经度、纬度和时间的一个值,例如,-1556788_u-2323088_558322882 我已经从我的NetCDF文件中提取了经度和纬度,并将它们连接成一个变量concatollat、大字符、4074441个元素,例如-1556788_uu2323088 如何获取400万lonLat值并添加时间,以便数据如下所示: [1,]-1556788_-2323088_558322882(第一次添加到第一行) [4074441,]-1608563_uu-

我试图制作一个长度为244466460的向量,它是经度、纬度和时间的一个值,例如,-1556788_u-2323088_558322882

我已经从我的NetCDF文件中提取了经度和纬度,并将它们连接成一个变量concatollat、大字符、4074441个元素,例如-1556788_uu2323088

如何获取400万lonLat值并添加时间,以便数据如下所示:

[1,]-1556788_-2323088_558322882(第一次添加到第一行)

[4074441,]-1608563_uu-2275088_558322882(第一次添加到第400万行)

[4074442,]-1556788_uu-2323088_559705304(第二次添加到接下来的400万行中,等等)

我为什么要这样做? 我之前问了一个关于标准化差异水指数(NDWI)的问题,然后被告知进行矢量化——我成功地做到了

但是,如果我使用完整的红-绿-蓝向量来形成一个矩阵来运行RGB2Lab(),我的内存就用完了。 通过去掉所有开放水域的值,我可以减少80%的向量。 然后不会耗尽内存

但我无法将long、lat和time与向量或RGB和Lab矩阵相匹配。 除非有一些我缺少的功能可以帮我做到这一点。 所以如果我做一个长lat和时间的向量,与我的其他向量相匹配,然后去掉相同的80%,那么这些向量都会匹配,对吗

然后我可以使用lon lat和time运行RGB2Lab函数。

参考,您可以使用:

as.vector(outer(coords, times, paste, sep="_"))
coords
是lon/lat值的向量,
times
是时间值的向量

例如:

x <- c("test", "test2", "test3")
y <- 1:2

as.vector(outer(x, y, paste, sep = "_"))
[1] "test_1"  "test2_1" "test3_1" "test_2"  "test2_2" "test3_2"

x谢谢。代码没有抛出错误。脚本已运行45分钟,但尚未完成。需要多长时间?代码似乎不起作用。在等待代码完成执行一个多小时后,R没有响应。我将尝试将其分解,并执行for循环,在坐标和时间之间循环。它对一个小子集有效吗?您的数据非常大,结果可能无法存储在内存中。是的。此代码:lonLatSeconds\u vec\u 1to3是。我使用18个时间段,然后将向量写入一个文件,以便稍后与其他向量连接在一起。