如果你问我R代码调试我就会告诉你head

任何一个编程语言, 要想足够好用,都必须要有完善的代码调试机制,毕竟谁写代码还不碰到几个bug呢。

比如R语言编程,简单的R代码调试,其实靠head,str,help函数即可。所以我从强调初学者应该是要至少把这3个函数敲1000遍以上。比如,群里有人问它的表达矩阵里面的探针ID,跟他准备好的探针ID与基因对应表格, 无法匹配,自己在Excel手动搜索,明明是每一个探针都存在于准备好的探针ID与基因对应表格里面。

探针ID与基因对应表格

我让他把两个数据保存为rdata给我,我写代码检查了一下:

rm(list = ls()) 
load('input.Rdata')
head(ids)
exprSet[1:4,1:4]
head(rownames(exprSet))
rownames(exprSet)=gsub('"','',rownames(exprSet))
head(rownames(exprSet))

其实我就是简简单单的使用了head函数,就调试出来了。

不过,也有高级调试工具debugging tools,比如一些R中的调试函数

  • traceback 函数
  • debug 函数
  • browser 函数
  • trace 函数
  • recover 函数

另外,很多开发者在编写其R包的函数里面,也会加入3种用户交互信息:

  • message:由message()函数产生
  • warning:由warning()函数产生
  • error:由stop()函数产生

Comments are closed.