【问题标题】:How to read a CSV file with row.names = 1?如何读取 row.names = 1 的 CSV 文件?
【发布时间】:2020-03-16 06:35:33
【问题描述】:

我想在 R 中读取 .csv 文件,以绘制热图。 我的 .csv 数据如下所示:

Label|AA|BB|CC|DD
YE1  |0.1|0.9|0.3|0.7|
YE2  |0.3|0.5|0.2|0.3|
NE1  |0.9|0.6|0.1|0.4|
NE2  |0.8|0.7|0.1|0.5|

AA 到 DD 是特征,Label 代表行名。我想绘制特征与标签的热图

为了读取 .csv 文件,我写了以下内容:

data <- read.csv("C:/example.csv", row.names= 1)

但是,这给了我一个错误。

read.table 中的错误(file = file,header = header,sep = sep,quote = quote,: 不允许重复的“row.names”

我遇到了reading a csv file with repeated row names in R,答案是设置row.names = NULL。但我不想设置row.names = NULL。我想读取数据框中的行名。如何做到这一点?

谢谢。

【问题讨论】:

  • 您的文件没有行名称。它有五个命名列。顺便说一句,R 中有一个广泛的趋势,即认为行名是不好的,而不是使用它们(因为它们是表的适当部分,应该这样对待!)。我建议也这样做。

标签: r heatmap


【解决方案1】:

我发现这样做的唯一方法是:

data <- read.csv("C:/example.csv")
rownames(data)=data[,1]
data=data[,-1]

【讨论】:

  • 不要混用 &lt;-=。选择一种风格并始终如一地使用它。
  • 感谢@Konrad Rudolph 编辑问题。
  • 你也可以使用tibble::column_to_rownames
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-09-17
  • 2021-07-28
  • 2013-06-13
  • 2019-05-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多