我正在学习如何在R中的lidR包中使用catalog()选项,我想直接保存处理过的文件,例如,在目录上使用grid_terrain()函数,并保存原始LAZ/LAS文件的文件名。
正如您在包装指南中看到的那样,目录可以使用{XBOTTOM}_{ID}这样的东西来保存文件:
# Internal engine will not return results into R. Instead it will write results in files.
opt_output_files(ctg) <- "/path/to/folder/templated_filename_{XBOTTOM}_{ID}我想使用相同的文件名保存文件,但是,我不知道如何在opt_output_files()选项中使用{}配置该部分。例如,我尝试了几种方法,例如:opt_output_files(cat) <- paste0(output,"/{data$filename}"),但是它不起作用。
lasdir <- "C:/lazfiles"
output <- "C:/output"
cat <- catalog(lasdir)
lasfiles <- cat@data$filename #with this you can see the filenames
opt_progress(cat) <- TRUE
opt_output_files(cat) <- paste0(output,"/{data$filename}")
opt_cores(cat) <- 3
opt_chunk_buffer(cat) <- 20
#function that I want to use over the catalog files
mdt <- grid_terrain(cat, res = 5, algorithm = "knnidw"(k = 5, p = 2)) 发布于 2019-03-06 12:23:39
在grid_terrain帮助部分“支持的处理选项”中找到答案:
output_files:返回R中的输出或将每个集群的输出写入文件中。支持的模板是.,ORIGINALFILENAME。
这就是解决办法:
opt_output_files(cat) <- paste0(output,"/{ORIGINALFILENAME}")https://stackoverflow.com/questions/55021924
复制相似问题