写代码时遇到的小问题

有时我们在构建函数后,用的时候会提示里面的一个对象找不到,
比如:


图片.png

但是我们仔细检查函数,发现这个对象是存在的
拆开来运行都不报错,但一封装起来就报错。
首先看你的对象是在函数外还是函数内构建的,一般出现这种错误的都是函数内构建的。
解决方法很简单:

m<<-data.frame() ##只需要把这个对象设置为全局变量即可

###########################
bedtools 是一个很实用的工具。但是在与R连用时还是有一些小问题。
比如在使用merge功能时,发现用R保存的文件bedtools读不了
经过仔细检查后,推测是因为文件的第一行存在科学计数法,如 1.7e-5.
因此需要不让它自动转为科学记数法,
方法:把数值转化为字符型进行保存。

c$V5 <- as.character(format(c$V5,scientific=FALSE))
c$V6 <- as.character(format(c$V6,scientific=FALSE))
write.table(c,file="/public/slst/home/ningwei/Hicdata/data/test/test1.tsv",sep="\t",col.names=F,row.names=F,quote=F)
d<-system("bedtools merge -i /public/slst/home/ningwei/Hicdata/data/test/test1.tsv ", intern = TRUE)

如果还是报错的话,检查下是否是TAB键分割,因为数值型转换为字符型时,前面很容易产生空格,用gsub()删掉就可以。

#####################################
未完待续

你可能感兴趣的:(写代码时遇到的小问题)