[英]Creating a heatmap using .csv in R
我想弄清楚如何创建热图。
我有一个 csv 文件,我已经导入了 58 个变量的 61 个观察值,格式如下,并将所有 na 值更改为 0。
T1 T2 T3 T4
1 aaa 3 6 3 0
2 aab 1 8 5 0
3 abb 2 5 0 0
4 bbb 10 0 10 7
5 bbc 8 2 8 1
heat <- data.frame(read.csv("heatdata.csv", header=T))
write.csv(heat,"heat.csv",na="0")
heat <- data.frame(read.csv("heat.csv", header=T))
我想创建热图,既使用数据框中的所有数据,又指定特定列(例如,仅 T2 和 T3)。 我曾尝试同时使用 heatmap 和 heatmap.2,但显然我的数据格式不正确,并且不确定如何处理数据。
heatmap(heat2)
Error in heatmap(heat2) : 'x' must be a numeric matrix
矩阵中的 NA 导致了问题。 用一些数值删除 NA
假设这是您的原始 CSV:
T1 T2 T3 T4
aaa 3 6 3 NA
aab 1 8 5 NA
abb 2 5 NA NA
bbb 10 NA 10 7
bbc 8 2 8 1
那么你不需要明确地改变 NA。 如果没有row.names = FALSE
您将在第二次读取时获得冗余索引。
df <- read.table(header = T, text = "
T1 T2 T3 T4
aaa 3 6 3 NA
aab 1 8 5 NA
abb 2 5 NA NA
bbb 10 NA 10 7
bbc 8 2 8 1", sep = "")
df <- read.csv("heatdata.csv", header=TRUE)
heatmap(as.matrix(df))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.