首页 > 解决方案 > 在循环R中将​​矩阵更改为字符变量

问题描述

快速总结:我正在尝试在 R 的循环或函数中应用 dim(x)<-NULL

我在R中使用包colordistance。我试图为个别情况创建一个循环的函数如下:

image_folders <- dir(path='./photos/', full.names = T)
image_1 <- sapply(image_folders[1], colordistance::getImagePaths)
dim(image_1) <- NULL

目前我已经尝试这样创建一个函数:

list_images <- function(folder,index){
  require(colordistance)
  sapply(folder[index],colordistance::getImagePaths)
}

然后在循环中调用它:

for (i in 1:length(image_folders)){
  name <- paste("image", basename(image_folders[i]), sep="_" )
  assign(name, list_images(image_folders, i))
}

但是,这会导致每个图像列表都有一个矩阵。我需要将dim(image_1)<-NULL它们包含在字符变量中以进行后续分析。

我尝试将它放在函数和循环中,但这要么导致值全部为 NULL,要么似乎没有做任何事情。

我的预期结果是在我的全局环境“值”部分中具有字符,其中包含提供给循环的每个文件夹中的所有图像的名称。我不希望这些在我的全球环境的“数据”部分。

我是否过于复杂了?我怎样才能实现我的目标?- 提前致谢!

标签: rfunctionloops

解决方案


推荐阅读