使用R語言批量修改文件名的方法
在R語言默認目錄下有一文件夾test,其下有三個文件,分別是test1.txt, text2.txt, text3.txt, 現(xiàn)在要對這三個文件進行批量的修改。主要使用到了for 循環(huán)和sub()字符替換函數。思路是先通過list.files()函數將test文件夾下面的三個文件名讀至變量,然后通過for循環(huán)來實現(xiàn)批量修改文件名。
1. 修改文件擴展名
folder<-setwd('~/test') files<-list.files(folder) for (f in files){ newname<-sub(".txt",'.xls',f) file.rename(f,newname) } dir()
顯示結果:
[1] "text1.xls" "text2.xls" "text3.xls"
2. 刪除文件擴展名
folder<-setwd('~/test') files<-list.files(folder) for (f in files){ newname<-sub('.xls','',f) file.rename(f,newname) } dir()
顯示結果:
[1] "text1" "text2" "text3"
3. 增添文件擴展名
這里我們用到一個正則表達式,用‘$'代替字符的尾部,將字符尾部替換為'.doc'
folder<-setwd('~/test') files<-list.files(folder) for (f in files){ newname<-sub('$','.doc',f) file.rename(f,newname) } dir()
輸出結果:
"text1.doc" "text2.doc" "text3.doc"
4. 修改文件名中的字符
folder<-setwd('~/test') files<-list.files(folder) for (f in files){ newname<-sub('xt','ab',f) #將原文件中的字符xt,替換為字符ab file.rename(f,newname) } dir()
輸出結果:
[1] "teab1.doc" "teab2.doc" "teab3.doc"
5. 刪除文件名中的數字
把實驗目錄下的文件分別修改為tab.doc,teb.doc, tdb.doc,用“\\d”正則表達式代替文件中的數字。
folder<-setwd('~/test') files<-list.files(folder) for (f in files){ newname<-sub('\\d','',f) file.rename(f,newname) } dir()
輸出結果:
[1] "tab.doc" "tdb.doc" "teb.doc"
參考文章:
1.R語言文件目錄操作 https://www.omicsclass.com/article/338
2.R語言字符串替換 https://www.cnblogs.com/emanlee/p/4464018.html
到此這篇關于使用R語言批量修改文件名的文章就介紹到這了,更多相關R語言批量修改文件名內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
詳解R語言中的多項式回歸、局部回歸、核平滑和平滑樣條回歸模型
這篇文章主要介紹了R語言中的多項式回歸、局部回歸、核平滑和平滑樣條回歸模型,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-03-03R語言入門在CentOS服務器上配置RStudio Server
最近在服務器(Linux)上進行RStudio Server的環(huán)境配置,其實主要的工作在RStudio的官方網站中已經說明清楚了,關鍵是需要先安裝R,以及進行部分配置2021-11-11