簡體   English   中英

有沒有辦法在 R 中將大型文檔作為 data.frame 讀取?

[英]Is there a way to read in a large document as a data.frame in R?

我正在嘗試在存儲到csv文件中的大型數據集上使用 ggplot2。 我曾經用 excel 閱讀它。

我不知道如何將此數據轉換為data.frame 特別是,我有一個日期列,其格式如下: "2020/04/12:12:00" 我怎樣才能讓R理解這種格式?

如果是csv ,您可以使用:

  • freaddata.table 這將是讀取 csv 的最快方法。
  • 閱讀器readr中的read_csvread_csv2 (用於;分隔的文檔)

如果是.xls (或.xlsx )文檔,請查看readxl package。

所有這些函數都將您的數據導入為data.frame (附加類,如data.table用於freadtibble用於read_csv )。

編輯

鑒於您的評論,您的文件似乎不是 excel 而是 csv。 如果要將列類型轉換為日期,假設您的 dataframe 稱為df

df[, dates := as.POSIXct(get(colnames(df)[1]), format = "%Y/%m/%d:%H:%M")]

請注意,您不需要使用cbind甚至重新分配data.table因為您使用:=運算符

正如消息所說,您不需要POSIXlt的額外精度

僅就這個問題而言,我建議使用 openxlsx package,它幫助我顯着減少了讀取大型數據集的時間。 根據您的問題和評論,您可能會發現這三點很有幫助

  • 讀取命令與 xlsx package 相同,但建議您使用openxlsx::read.xslx(file_path)
  • arguments 再次相同,但在sheetIndex的地方它是sheet並且只需要數字
  • 如果現有的列被轉換為字符,那么一個簡單的as.Date就可以了

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM