【发布时间】:2014-01-16 10:26:02
【问题描述】:
我不知道我尝试做的是否可行!我有一个值矩阵(Var_sim),并将其转换为 ff 对象。该对象的名称是用“粘贴”创建的。现在我想在函数 ffload 中使用这个对象,这是我的代码:
Variables[k] = TEMP
Cell_number[i] = 4095
selected_domains = 1
assign(paste("Mat_",Variables[k],"_",Cell_number[i],"_",selected_domains[j],sep=""),as.ff(Var_sim))
在这里,我将变量 Mat_TEMP_4085_1 作为 ff 对象。我在一个循环中使用它,所以我将拥有各种名称(不同的 cell_number)的各种 ff 对象。我需要在函数中使用 Mat_TEMP_4085_1 (和其他),但我不能只写名称:
ffsave(as.name(paste("Mat_",Variables[k],"_",Cell_number[i],"_",selected_domains[j],sep="")), file="Test")
我有以下错误:
Error in ffsave(as.name(paste("Mat_", Variables[k], "_", Cell_number[i], :
objet ‘as.name(paste("Mat_", Variables[k], "_", Cell_number[i], "_", selected_domains[j], sep = ""))’ not found
它无法识别变量。我该怎么办?
【问题讨论】:
-
这些“ff”是什么东西?从一个包裹?此外,命名和使用分配几乎总是错误的,并且很可能是您的问题的原因。制作事物的列表,而不是尝试将索引放入事物的名称中。
-
是的 ff 是一个包,我使用它是因为我正在处理大数据。该函数会将每个 ff 文件写入一个文件夹中,然后我可以重新加载它们并逐个使用一个矩阵。问题是当我加载一个ff对象时,变量名是保存在ffsave中的对象的名称。如果我总是输入相同的名称并且我想加载几个 ff 对象,则该变量将被覆盖,因为它将是相同的名称。
-
您可以使用
envir参数将每一个加载到不同的环境中并从中列出。
标签: r function filenames assign ffbase