R根据CSV中的条件选择工作目录中的文件

R根据CSV中的条件选择工作目录中的文件,r,select,conditional-statements,R,Select,Conditional Statements,我有一个名为“NVSPL”的工作目录,包含7000多个.txt文件。在分析过程中,我希望忽略其中一些文件。我创建了一个单独的CSV文件,其中有一列包含我工作目录中7000多个.txt文件的名称和扩展名。如果要保留关联的.txt文件,则CSV中的第二列为“0”,如果要忽略关联的.txt文件,则为“1” 如何让R遍历CSV,找到所有“0”并使用相关的.txt文件创建一个新文件夹 在这种情况下,我需要一个新文件夹,该文件夹只包含“GoodData”列中带有“0”的文件 感谢您的时间和努力。我们可以使

我有一个名为“NVSPL”的工作目录,包含7000多个.txt文件。在分析过程中,我希望忽略其中一些文件。我创建了一个单独的CSV文件,其中有一列包含我工作目录中7000多个.txt文件的名称和扩展名。如果要保留关联的.txt文件,则CSV中的第二列为“0”,如果要忽略关联的.txt文件,则为“1”

如何让R遍历CSV,找到所有“0”并使用相关的.txt文件创建一个新文件夹

在这种情况下,我需要一个新文件夹,该文件夹只包含“GoodData”列中带有“0”的文件


感谢您的时间和努力。

我们可以使用
文件。复制
。将“文件名”列中的文件子集,然后使用
file.copy
将这些文件复制到新创建的目录中

files <- file.path("path/to", with(df1, FileName[!GoodData]))
dir.create("path/to/NVSPL_new", recursive = TRUE)


for(file in files) {

   file.copy(file, "path/to/NVSPL_new")
   }

文件如果你已经标记了文件,我认为没有必要创建一个新文件夹并移动文件?只需使用该标志作为是否读入R的基础。@neilfws感谢您的评论。我同意,这将是一个更好的方法来减少新文件夹的创建。你对如何进行这项工作有什么建议吗?谢谢你的回复。然而,我不确定我是否明白这是怎么回事。我假设“df1”是已经加载到R中的csv文件。假设这样做,并将路径添加到具有“path/to”的.txt文件目录中,R返回一个错误:“eval中出错(替换(expr),data,enclose=parent.frame()):未找到对象“FileName”有什么想法吗?另外,我看不出您的代码是如何基于“0”或“1”进行选择的。谢谢大家!@user3494534是的,您的“FileName”列只有文件名而没有路径。它需要正确的路径来复制文件。我使用了
path/to/
,因此您可以通过使用
paste
file.path
@user3494534来更改这些属性!GoodData
,该列为二进制。如果我们求反(
),那么它将转换为逻辑,0变为TRUE,1变为FALSE。因此,我们使用它来子集文件名',它也可以显式地作为
文件名[GoodData==0]
@user3494534是否需要双精度`\`