小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

總結(jié) | R語(yǔ)言文件與文件夾操作匯總

 育種數(shù)據(jù)分析 2021-11-18

有時(shí)候,編寫(xiě)代碼時(shí),需要查看一下當(dāng)前文件夾的內(nèi)容,有時(shí)候需要?jiǎng)?chuàng)建文件或者文件夾,之前都是在windows系統(tǒng)或者Linux系統(tǒng)下創(chuàng)建好,但總不夠原滋原味。這里,總結(jié)一下常用的文件創(chuàng)建,文件夾創(chuàng)建,判斷是否存在,文件復(fù)制,文件刪除等操作。

「太長(zhǎng)不看版:」

## 瀏覽功能
dir # 瀏覽整體文件及文件夾
list.files # 瀏覽文件
list.dirs # 瀏覽文件夾

## 判斷功能
file.exists # 判斷文件是否存在
dir.exists # 判斷文件夾是否存在

## 創(chuàng)建功能
file.create # 創(chuàng)建文件
dir.create # 創(chuàng)建文件夾

## 重命名功能
file.rename # 重命名文件和文件夾

## 刪除功能
file.remove # 刪除文件
unlink # 刪除文件夾

## 復(fù)制功能
file.copy # 復(fù)制文件

1. 文件瀏覽

共有三個(gè):

  • dir() # 全部的文件和文件夾
  • list.files() # 全部的文件
  • list.dirs() # 全部的文件夾

「語(yǔ)法:」

dir(path = ".", pattern = NULL, all.files = FALSE,
full.names = FALSE, recursive = FALSE,
ignore.case = FALSE, include.dirs = FALSE, no.. = FALSE)

list.files(path = ".", pattern = NULL, all.files = FALSE,
full.names = FALSE, recursive = FALSE,
ignore.case = FALSE, include.dirs = FALSE, no.. = FALSE)

list.dirs(path = ".", full.names = TRUE, recursive = TRUE)

「舉個(gè)例子:」

「R語(yǔ)言實(shí)現(xiàn):」

# 瀏覽功能

## 瀏覽全部
dir()

## 瀏覽文件夾
list.dirs()

## 瀏覽文件
list.files()

2. 判斷文件和文件夾是否存在

編寫(xiě)代碼時(shí),經(jīng)常用到,如果不存在文件夾,就創(chuàng)建文件夾。或者如果不存在某個(gè)文件,就怎么樣……

「file只能判斷文件,dir只能判斷文件夾」

file.exists("1.txt")
file.exists("單位.txt")

file.exists("文件夾1/")

dir.exists("單位.txt")
dir.exists("文件夾1/")

3. 文件復(fù)制

file.copy只能復(fù)制文件,不能復(fù)制文件夾,如果復(fù)制成功,會(huì)出現(xiàn)TRUE,不成功是返回FALSE

# 文件復(fù)制
file.copy("單位.txt","aaa.txt")
list.files()

file.copy("文件夾1/","file_dir_copy_test")
list.files()

4. 文件重命名

file.rename,可以修改文件名,不可以修改文件夾名

# 文件移動(dòng)或重命名
file.rename("aaa.txt","bbb.txt")
dir()

file.remove("文件夾1 - 副本/","direc_test")

5. 文件和文件夾刪除

「文件刪除file.remove

# 刪除,remove
dir()
file.remove("aaa.txt")
dir()

「文件夾刪除unlink

文件夾刪除:unlink

注意,要?jiǎng)h除文件夾:

  • 不要寫(xiě)/, 比如unlink("a/"),是不會(huì)成功的
  • 要加上參數(shù),recursive = T

完整的寫(xiě)法:

dir()
unlink("新建文件夾/",recursive = T)
dir()

unlink("新建文件夾",recursive = T)
dir()

5. 文件和文件夾創(chuàng)建

「文件創(chuàng)建:file.create

> file.create("a1.txt")
[1] TRUE

「文件夾創(chuàng)建:file.create

> dir.create("file1")
>

6. 匯總

6.1 dir前綴的函數(shù),是文件夾的操作

  • dir.create,創(chuàng)建
  • dir.exists,是否存在
  • dir,瀏覽

6.2 file前綴的函數(shù),是文件的操作

7. 舉個(gè)例子

「創(chuàng)建文件夾寫(xiě)入文件」

?

如果當(dāng)前路徑中,存在result文件夾,就往里面寫(xiě)入1.txt, 2.txt ……20.txt等20個(gè)文件。如果不存在result文件夾,就創(chuàng)建文件,然后往里面寫(xiě)入txt文件。

?
# ex1
dir()
if(! dir.exists("result")){
dir.create("result")
}
namelist = str_c(1:20,".txt")
namelist

map(namelist,~file.create(str_c("result/",.)))

「代碼:」

  • 首先檢查是否存在,如果不存在就創(chuàng)建
  • 建立一個(gè)文件名
  • 用map函數(shù)進(jìn)行批量創(chuàng)建,里面用了str_c,里面用了匿名函數(shù)

看一下效果:

搞定,666!

    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶(hù) 評(píng)論公約

    類(lèi)似文章 更多