使用 R 重命名文件
Posted
技术标签:
【中文标题】使用 R 重命名文件【英文标题】:File renaming using R 【发布时间】:2016-02-14 23:44:30 【问题描述】:我正在尝试使用 R 重命名几个文件,并且我已经尝试了所有能够找到类似问题的解决方案,但均未成功。
我创建了一个带有我要更改的文件名称的向量,以及另一个带有我要更改的名称的向量,所以它们看起来像:
from1 <- as.character(c("test1.txt", "test2.txt", "test3.txt"))
to1 <- as.character(c("testA.txt", "testB.txt", "testC.txt"))
其中from1
对应于我工作目录中现有文件的名称,to1
对应于我希望它们拥有的名称。当我尝试file.rename(from1, to1)
时,我得到[1] FALSE FALSE FALSE
,即使我只使用file.rename(from1[1], to1[1])
中的向量的一个元素尝试它,我也只是得到[1] FALSE
,我的文件夹中没有任何反应
我也尝试过this 函数作为对与我非常相似的问题的答案发布,它似乎有效,因为当我运行测试时,我得到了
found 1 possible files
would change test1.txt to testA.txt
changed 0
但是当我真正尝试这样做时,我得到了
found 1 possible files
changed 1
但我的目录中实际上没有任何变化。
我不确定这个问题是否足够清楚或需要更多代码,如果是,请询问,我很乐意编辑。
【问题讨论】:
该代码对我有用。您确定您在文件目录中吗?使用getwd()
和setwd()
另外,不需要as.character
,因为" "
已经定义了一个字符。
How to rename files with a specific pattern in R?的可能重复
【参考方案1】:
假设您在正确的工作目录中(否则将其设置为setwd("")
,您可以使用以下命令更改文件名:
from1 <- c("test_file.csv", "plot1.svg")
to1 <- c("test.csv", "plot.svg")
file.rename(from1, to1)
但请确保您位于正确的目录中并且文件存在(您可以使用 list.files
或 file.exists
来做到这一点。
【讨论】:
【参考方案2】:要在 R 中重命名文件,只需使用:
file.rename("mytest.R", "mytest2.R")
这个命令也可以向量化。
files.org = c("mytest1.R","mylife.R")
files.new = c("mytest01.R","mytest02.R")
file.rename(files.org, files.new)
【讨论】:
以上是关于使用 R 重命名文件的主要内容,如果未能解决你的问题,请参考以下文章