You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

R语言使用read.csv、read.csv2读取csv文件数据均在同一列如何解决

问题解决方案

问题原因

从运行输出结果可以判断,CSV文件的字段分隔符为分号;,表头行末尾存在冗余逗号,属于文件导出时的格式异常。此前使用read.csv2未成功是因为该函数默认适配小数点为逗号、分隔符为分号的欧洲CSV格式,文件存在的格式异常会触发识别失败,显式指定参数更稳妥。

解决方法

  • 方法1:使用R基础包显式指定参数读取
    直接指定分隔符、表头参数即可正常拆分,代码如下:
# 显式指定分隔符为分号,开启表头识别,自动去除字段前后多余空格
disease_type <- read.csv(
  "C:/Documents/Cancer_Bioinformatics/disease_type.csv",
  sep = ";",
  header = TRUE,
  strip.white = TRUE
)
# 验证读取结果
head(disease_type)

如果读取后发现最后一列全为空值(由表头末尾冗余逗号导致),直接删除最后一列即可:

disease_type <- disease_type[, -ncol(disease_type)]
  • 方法2:使用兼容性更强的data.table::fread读取
    fread对格式不规范的CSV兼容性更高,可自动识别大部分分隔符和格式异常:
# 未安装data.table时先运行安装
# install.packages("data.table")
library(data.table)
disease_type <- fread(
  "C:/Documents/Cancer_Bioinformatics/disease_type.csv",
  sep = ";",
  header = TRUE
)
# 如需转换为普通data.frame格式
disease_type <- as.data.frame(disease_type)

内容的提问来源于stack exchange,提问作者Kev

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 18:06:01