R|批量循環處理同一格式文件-csv,txt,excel

2021-12-28 生信補給站

收錄於話題 #R-數據分析 17個

    在一個文件夾下有很多欄位一致,格式統一的數據文件(csv,txt,excel),可以使用R快速的統一成一個文件方便後續分析和處理。

    將需要處理的欄位一致,格式統一的數據文件(csv,txt,excel),放到文件夾內,並將此文件夾設置為工作目錄,下面分情況介紹如何批量讀取並合併數據。

1)文件夾內只有一種格式的文件:csv,txt,excel;

2)文件夾內有多種格式的文件:csv,txt,excel以及其他的png,pdf等文件;


1 僅有一種類型文件,此處以csv示例

設定工作目錄,將需要處理的數據文件放到工作目錄下

#查看當前路徑下所有文件

#setwd(D:\\..\\data\\)

a = list.files()    

a

dir = paste("./",a,sep="")                

n = length(dir)                                      

merge.data = read.csv(file = dir[1],header=T,sep=",")  


for (i in 2:n){
  new.data = read.csv(file = dir[i], header=T, sep=",")
  merge.data = rbind(merge.data,new.data)
}


write.csv(merge.data,file = "./merge_all.csv",row.names=FALSE)  


2 存在多種類型文件,僅讀取csv格式文件

當工作目錄下多種類型文件時,只讀取其中一種

list.files()


a = list.files(pattern = ".csv")                                    

merge.data = read.csv(a[1],header=T,sep=",")  


for (i in 2:n){
  new.data = read.csv(a[i], header=T, sep=",")
  merge.data = rbind(merge.data,new.data)
}

write.csv(merge.data,file = "./merge_only_csv.csv",row.names=FALSE)  

註:因txt文件亦可以直接用R基本讀入方式讀取,更改read.table即可,此處不舉例。


3 存在多種類型文件,僅讀取excel格式文件

因R不能直接讀取excel文件,需要加載R包,個人習慣利用readxl包讀取。


library(readxl)

list <- list.files()
a <- grep('\\.xlsx', list, value = TRUE)

n = length(a)
merge.data = read_excel(a[1])  

for (i in 2:n){
  new.data = read_excel(a[i])
  merge.data = rbind(merge.data,new.data)
}

write.csv(merge.data,file = "./merge_only_excel.csv",row.names=FALSE)  

低時間投入成本,高效率回報🤭

【覺得不錯,右下角點擊點個「在看」,轉發就是最好的支持和讚賞,謝謝!】



相關焦點

  • 在R裡怎麼導入txt/csv和excel文件
    在使用R進行數據處理和圖表繪製時,第一步要做的是將數據導入到R中。我們使用比較多的數據存儲格式有.txt, .csv,.xlsx,.xls等。
  • R語言 | 讀寫txt、csv、excel文件
    讀取包代碼功能txtreadtextreadtext()讀取txt文件csvreadrread_csv()讀取csv文件excelreadxlread_excel()讀取xls、xlsx文件默認csv文件為utf-8編碼#讀取csvdf <- readr::read_csv
  • 如何批量合併txt、csv文件?1s時間足矣
    收錄於話題 #Excel文件合併 👆點擊關注Excel表哥公眾號批量文件合併是我們日常工作生活中非常常見的一種文件操作方式,最常見的方法就是複製粘貼了
  • 批量轉化xlsx文件為csv格式
    寫在前面python對於文件流工作做的比R包,這是我目前的感受,今天給大家貢獻一個小函數,這是趙向陽師弟編寫的,我們在處理xlsx文件過程中需要將
  • BIOM、txt、csv和xlsx格式的數據導入R
    無論是什麼格式的數據首先要做的是告訴R你的工作路徑,或者你工作的文件夾的路徑是什麼。有很多方式可以做到這一點,這裡我只介紹一種。代碼如下:setwd(choose.dir())#選擇工作路徑#輸入以上代碼然後快捷鍵「ctrl+enter」就會彈出選擇工作路徑的窗口,選擇數據所在的「工#作盤(如E盤,D盤等)」和對應的「文件夾」點擊確定即可。
  • 使用readr包高效讀取txt/csv格式文件
    今天來學習下怎麼將txt/csv格式文件中的數據導入到R中。下面讀取的數據文件默認放置於工作目錄中。1.使用基礎函數讀取txt/csv文件read.table()函數是通用函數,可以用來讀取數據,讀取後的數據在R中以數據框形式存在。
  • 一篇文章就能深入理解pandas讀取excel,txt,csv文件等命令
    ://pandas.pydata.org/pandas-docs/version/0.24/reference/io.html文檔操作屬於pandas裡面的 Input/Output也就是IO操作,基本的API都在上述網址,接下來本文核心帶你理解部分常用的命令pandas讀取txt文件讀取txt文件需要確定txt文件是否符合基本的格式,也就是是否存在 \t, , ,等特殊的分隔符一般
  • 【R包薈萃】Excel文件的批量導入與導出:openxlsx包實用技巧
    本期主要為大家介紹導入和導出excel文件的工具:openxlsx包,以及批量導入導出文件的一些小技巧。install.packages("openxlsx")library("openxlsx")導出excel文件使用的是write.xlsx函數,通過介紹我們可以看到該函數主要是將數據框導出為xlsx文件,同時由於excel可存在多個sheet,該函數也支持導出a list of data.frames。
  • 福利:excel批量轉CSV自製小工具
    研發遊戲項目的流程中,excel表屬於策劃最常用的技能之一,而csv表是程序利用相對普遍的一種格式,excel錶轉csv也因此在很多項目中成了一個最常見的工作內容,這也是我製作這款工具的原因之一。在此之前,我曾用過一些網上搜到的同類工具,也曾為不同的項目需求寫過多次類似的工具。
  • Python筆記:批量合併Excel文件信息
    但是,如果文件的數目太多(比如幾十個、上百個、幾百上千個)的時候,再一個一個地去加載,會是一件很折騰人的事情。我們又知道,for循環可用來進行批處理,來幫我們自動實現大量重複的操作步驟。例如:我在桌面上的「python」文件夾內放置4個表結構相同(表頭相同)的文件,接下來我準備用for循環優雅地實現上面我所吹過的牛。文件截圖如下:註:為了不洩露工作信息,所以我對表格內容進行了模糊化處理。
  • 【R數據處理】R語言數據輸入輸出總結
    」   --科白君在數據分析和處理前,無論對新手還是對老手來說不可避免的一件事就是數據輸入。高效的數據輸入和輸出不僅可以節省大量的時間,還能為以後數據的複查做好準備。本節,我們就對常見的幾種數據格式的輸入和輸出做做總結,希望對經常使用R的朋友們有所幫助。
  • 想提高工作效率,想解決工作中csv表格和txt的文件處理,這個技術必學
    一、實現.txt文件要求:比如,有一天,老闆發給了你一個郵件,郵件裡面有一個壓縮文件,通過下載到電腦之後,你高高興興的對文件解壓並點開一看,發現文件打開來是成千上萬的文件,文件類型也很多,包括了.txt後綴的普通文檔,圖片(png,jpg,jpeg等格式).csv,.xlsx,壓縮包,配置文件等等類型文件,你除了嘆氣還是嘆氣。
  • 如何將Excel或csv文件導入R?
    今天介紹如何將excel或csv文件導入進R。在學習了一系列的R語言作圖教程後,想必有些小夥伴都已經躍躍欲試,想要分析自己手頭的數據了。為了示範,先用Excel創建一個xlsx數據:"mydata.xlsx",具體如下圖所示。
  • 基於Python實現對各種數據文件的操作
    常見的數據文件類型如下:txtcsvexcel(xls\xlsx)在線網頁數據pdf\word其他數據軟體格式1 txt文件更多參考:https://docs.python.org/3/tutorial/inputoutput.html
  • 用Excel打開CSV格式文件亂碼,三種方法可以處理好!
    這款軟體不僅功能齊全,還可以兼容很多的文件格式。這些辦公軟體帶給我們方便,同時日常使用過程中也會出現一些問題。小編今天就有這樣一個問題,有朋友在使用office中的excel電子表格編輯工具來打開csv文件,但是他卻發現在打開的時候文件總是會顯示亂碼的情況,可對於.csv文件格式,excel是支持的,這是為什麼呢?就是這樣一個問題大家有沒有遇到過並解決好了嗎?現在小編就帶給你兩種解決的方法。
  • n種方式教你用python讀寫excel等數據文件
    點擊上方「濤哥聊Python」,選擇「星標」公眾號重磅乾貨,第一時間送達來源:Python大數據分析python處理數據文件的途徑有很多種,可以操作的文件類型主要包括文本文件(csv、txt、json等)、excel
  • n種方式教你用Python讀寫Excel等數據文件
    # 讀取csv文件import csvwith open('test.csv','r') as myFile: lines=csv.reader(myFile) for line in lines: print (line)
  • 跟小白學Python數據分析——批量合併CSV文件
    Python進行批量合併處理操作需要使用到os模塊。
  • 0.1秒,合併100個Excel表格,快的不敢相信!
    新建一個txt文件,然後輸入代碼:Copy  *.csv  合併.這是因為批處理命令只能批量合併文本格式的文件,無法批量合併Excel工作簿,而Csv格式則是一種特殊的Excel表格格式:用純文本儲存的表格數據。遺憾的是,這種批處理方法只適用於csv格式的表格。你是不是馬上想問:蘭色,我有N多個xlsx格式的文件,怎麼用這種方法合併?
  • python:CSV 文件讀寫
    newline :表示不換行,就是一個字符串,如果裡面傳值就會報:ValueErrorencoding :指定編碼格式;不然寫入文件的就是亂碼如果你要在excel中打開被寫入的文件,那encoding編碼格式就得指定為「 gbk 」,不然excel中也是會顯示亂碼;但是excel中不顯示亂碼了,被寫入的csv