簡體   English   中英

無法使用 R 讀取 csv 文件

[英]Cannot read csv file with R

我有一個 csv 文件,看起來像:

,,,,,,,,
,,,,a,b,c,d,e
,,,"01.01.2022, 00:00 - 01:00",82.7,57.98,0.0,0.0,0.0
,,,"01.01.2022, 01:00 - 02:00",87.6,50.05,15.0,25.570000000000004,383.55000000000007
,,,"01.01.2022, 02:00 - 03:00",87.6,41.33,0.0,0.0,0.0

我想先導入表頭,然后是數據,最后將表頭插入到帶有數據的表的名稱中

file <- "path"

pnl <- read.csv(file, dec = ",")  #, skip = 1, header = TRUE)
headers <- read.csv(file, skip = 1, header = F, nrows = 1, as.is = T)

df  <- read.csv(file, skip = 2, header = F, as.is = T)

#or this
#df <- read.csv(file, skip = 2, header = F, nrow = 1,dec = ".",sep=",", quote = "\"")
colnames(df) <- headers

導入標題時,我有多個包含標題條目的列。 但是,在導入表格時,所有條目都放在一列中,與 csv 文件中的相同(應該是多列)。 如何使用 read.csv() 函數解決它?

像這樣?

data.table::fread(',,,,,,,,
                  ,,,,a,b,c,d,e
                  ,,,"01.01.2022, 00:00 - 01:00",82.7,57.98,0.0,0.0,0.0
                  ,,,"01.01.2022, 01:00 - 02:00",87.6,50.05,15.0,25.570000000000004,383.55000000000007
                  ,,,"01.01.2022, 02:00 - 03:00",87.6,41.33,0.0,0.0,0.0', 
                  skip = 1)

   V1 V2 V3                        V4    a     b  c     d      e
1: NA NA NA 01.01.2022, 00:00 - 01:00 82.7 57.98  0  0.00   0.00
2: NA NA NA 01.01.2022, 01:00 - 02:00 87.6 50.05 15 25.57 383.55
3: NA NA NA 01.01.2022, 02:00 - 03:00 87.6 41.33  0  0.00   0.00

不使用任何庫:


colClasses <- c("NULL", "NULL", "NULL", "character", "numeric", "numeric", "numeric", "numeric")

read.csv(file, header = TRUE, skip = 1, colClasses = colClasses)

#                         X.3    a     b  c     d
# 1 01.01.2022, 00:00 - 01:00 82.7 57.98  0  0.00
# 2 01.01.2022, 01:00 - 02:00 87.6 50.05 15 25.57
# 3 01.01.2022, 02:00 - 03:00 87.6 41.33  0  0.00

您將要重命名第一列。

暫無
暫無

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

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