R: Error in hclust(d, method = method) : 外接函数调用时不能有NA/NaN/Inf(arg10)

使用R的pheatmap包绘制热图时,会遇到很多缺失值的情况,此时需要对其进行去除或替换处理,但利用“is.na()”发现一直报错:

Error in hclust(d, method = method) : 
  外接函数调用时不能有NA/NaN/Inf(arg10)

折腾了许久,后来发现是用以下代码进行缺失值替换时,未成功替换NA值:

data1[is.na(data1)] <- 1

原因:
原来是我在原始数据中手动将缺失值替换为了NA导致
解决方法:
将excel中手动输入的NA值替换为空白,在输入到R中时,R会自动将空白处替换为NA,此时再按照上述代码运行就正常了。

附加:
当利用pheatmap()函数绘制图形时,持续报错“Error in hclust(d, method = method) :
外接函数调用时不能有NA/NaN/Inf(arg10)”。

pheatmap(data1, scale = "row")

检查发现:
pheatmap进行scale="row"时,
需对行均一化,就要去除整行全是0的数据才行,删除原始数据中的空行后问题解决。

你可能感兴趣的:(R,经验分享,办公软件,zotero)