如何在数据框中将多个文件名写成一行
How to write multiple filenames as a row in dataframe
我是 R 的新手。我正在尝试将一个函数应用于多个文件并编写一个数据框,其中包括所有文件名作为一列,相应的 "roughness" 结果作为另一列。
library(lidR)
files <- list.files(path= "/allfiles", pattern= "*.laz", full.names = TRUE, recursive = FALSE)
O = lapply(files, function(x)) {
las = readLAS(x, select = "xyzicnrRGB", filter = "keep_first -drop_z_below 0"),
chm = grid_canopy(las, 0.2, p2r()),
roughness <- rumple_index(chm),
return(roughness)
}
非常感谢任何帮助。
我想你快到了。您可以使用数据框。我没有安装你的文件或库 lidR,所以希望 rumple_index 不会 return 任何太古怪的事情
library(lidR)
files <- list.files(path= "/allfiles", pattern= "*.laz", full.names = TRUE, recursive = FALSE)
O = lapply(files, function(x) {
las = readLAS(x, select = "xyzicnrRGB", filter = "keep_first -drop_z_below 0")
chm = grid_canopy(las, 0.2, p2r())
roughness <- rumple_index(chm)
return(data.frame(file=x,roughness=roughness))
})
O = do.call(rbind,O)
我是 R 的新手。我正在尝试将一个函数应用于多个文件并编写一个数据框,其中包括所有文件名作为一列,相应的 "roughness" 结果作为另一列。
library(lidR)
files <- list.files(path= "/allfiles", pattern= "*.laz", full.names = TRUE, recursive = FALSE)
O = lapply(files, function(x)) {
las = readLAS(x, select = "xyzicnrRGB", filter = "keep_first -drop_z_below 0"),
chm = grid_canopy(las, 0.2, p2r()),
roughness <- rumple_index(chm),
return(roughness)
}
非常感谢任何帮助。
我想你快到了。您可以使用数据框。我没有安装你的文件或库 lidR,所以希望 rumple_index 不会 return 任何太古怪的事情
library(lidR)
files <- list.files(path= "/allfiles", pattern= "*.laz", full.names = TRUE, recursive = FALSE)
O = lapply(files, function(x) {
las = readLAS(x, select = "xyzicnrRGB", filter = "keep_first -drop_z_below 0")
chm = grid_canopy(las, 0.2, p2r())
roughness <- rumple_index(chm)
return(data.frame(file=x,roughness=roughness))
})
O = do.call(rbind,O)