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

R报错:不允许重复行名,读取模型输出CSV文件遇问题

解决读取CSV时"duplicate 'row.names' are not allowed"的报错

嘿,这个问题我之前也碰到过!报错的核心原因很简单:R在读取你的CSV文件时,尝试用某一列的值作为行名,但这列里有重复的内容(比如你数据里的time列全是1980),而行名在R的数据框里必须是唯一的,所以就触发了这个错误。

给你几个实用的解决方案,按优先级推荐:

  • 最直接的解决:不让R自动设置行名
    用read.csv()的时候,直接加上row.names = NULL参数,这样R就会放弃自动把第一列当行名,转而生成默认的数字序号行名,完美避开重复问题。代码如下:

    df <- read.csv("你的模型输出文件.csv", row.names = NULL)
    
  • 如果需要自定义行名:选唯一的列
    如果你确实想用数据里的某一列做行名,得挑一个值不会重复的列。看你给出的示例数据,第二列是递增的数字(1、2、3...),这列完全可以当行名,只需要指定row.names = 2(数字代表列的位置):

    df <- read.csv("你的模型输出文件.csv", row.names = 2)
    
  • 如果CSV没有列名:手动指定列名+禁用行名
    要是你的CSV文件第一行就是数据(没有列名),记得加上header = FALSE,同时手动指定列名,再禁用自动行名:

    df <- read.csv("你的模型输出文件.csv", header = FALSE, row.names = NULL, 
                   col.names = c("time", "x", "y", "z", "w", "r", "s", "t"))
    

另外提个小建议:可以先打开CSV文件检查一下,确认第一行是不是列名,有没有空白行或者格式错乱的情况——有时候这些小问题也会导致读取时的奇怪报错。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.20 12:10:06