boxplot绘图non-numeric argument to

2020-03-04  本文已影响0人  天涯清水

今天读入自己的芯片数据发现boxplot绘图竟然报错了.

boxplot(b,las=2)
Error in x[floor(d)] + x[ceiling(d)] : 
  non-numeric argument to binary operator
dim(dat1)

根据报错信息,报错显示出现即表达矩阵里面含有非数值型变量的character(字符)。
试了除去缺失值,不得行,数据本来也没缺失值;又试了转化为numeric,结果也不得行。谷歌搜索了很多解决办法,最后在CSND找到了解决办法,直接把整个矩阵转换为数值型:

b=apply(b,2,as.numeric)#将b矩阵,逐列转为数值型变量,并再次赋值给b

继续boxplot绘图,就成功了。


image.png

但是,这样转换有一个缺点,直接把表达矩阵的行名rowname也给转换了。
思考:报错的原因不是表达矩阵中表达量的数值问题,而应该是行名的问题。
重新赋予行名还是不行。

参考
R 语言中的 箱线图介绍 boxplot https://blog.csdn.net/xiangyong58/article/details/53377399
【R语言报错解决】—存在非数值型变量,Error in c_max * c_min : non-numeric argument to binary operator,如何在数据导入后转为数值型变量?https://blog.csdn.net/weixin_40561293/article/details/100587071

上一篇下一篇

猜你喜欢

热点阅读