R 将带引号的列识别为字符/类别

R 将带引号的列识别为字符/类别,r,R,我有一个csv,其中一些列是引号之间的整数: “14”、“3”、“6”、“3”和其他列都是不带引号的整数:3、5、0、2 当我将csv导入到R时,是否有方法自动检测引号之间带有整数的列作为字符或类别,以及带有整数但没有引号的列作为整数?将quote=“”添加到read.csv语句中。as.is=TRUE确保引用的列使用字符而不是因子。为了避免在标题中使用引号,我们将col.names设置为未使用quotes=“的二读版本的名称。如果希望引号成为数据的一部分,请省略标记为##的最后一行 Lines

我有一个csv,其中一些列是引号之间的整数:
“14”、“3”、“6”、“3”和其他列都是不带引号的整数:
3、5、0、2

当我将csv导入到
R
时,是否有方法自动检测引号之间带有整数的列作为字符或类别,以及带有整数但没有引号的列作为整数?

quote=“”
添加到
read.csv
语句中。
as.is=TRUE
确保引用的列使用字符而不是因子。为了避免在标题中使用引号,我们将
col.names
设置为未使用
quotes=“
的二读版本的名称。如果希望引号成为数据的一部分,请省略标记为##的最后一行

Lines <- '"a","b"\n"1",1'
DF <- read.csv(text = Lines, quote = "", as.is = TRUE, 
         col.names = names(read.csv(text = Lines, nrow = 1)))
DF[] <- lapply(DF, function(x) if (inherits(x, "character")) gsub('"', '', x) else x) ##
quote=”“
添加到
read.csv
语句中。
as.is=TRUE
确保引用的列使用字符而不是因子。为了避免在标题中使用引号,我们将
col.names
设置为未使用
quotes=“
的二读版本的名称。如果希望引号成为数据的一部分,请省略标记为##的最后一行

Lines <- '"a","b"\n"1",1'
DF <- read.csv(text = Lines, quote = "", as.is = TRUE, 
         col.names = names(read.csv(text = Lines, nrow = 1)))
DF[] <- lapply(DF, function(x) if (inherits(x, "character")) gsub('"', '', x) else x) ##

您可以使用package
readr

> readr::read_csv("test.txt", col_types = "ci")
# A tibble: 1 × 2
    `2`   `3`
  <chr> <int>
    1    14     
readr::read\u csv(“test.txt”,col\u types=“ci”) #一个tibble:1×2 `2` `3` 1 14
您可以使用package
readr

> readr::read_csv("test.txt", col_types = "ci")
# A tibble: 1 × 2
    `2`   `3`
  <chr> <int>
    1    14     
readr::read\u csv(“test.txt”,col\u types=“ci”) #一个tibble:1×2 `2` `3` 1 14
当我执行read.csv('test.csv',quote=“”)时,它会工作,但它会在列名称上做一些奇怪的事情,因为它们也在引号之间。(例如,使用此文件)。有可能避免这种情况吗?我已经扩展了答案。当我执行read.csv('test.csv',quote=“”)时,它会工作,但它会在列名称上做一些奇怪的事情,因为它们也在引号之间。(例如,使用此文件)。有可能避免这种情况吗?请给出详细的答案。