屏幕(1)
histplot(t(X),"代谢物:Hist")
histplot中的错误(t(X),"代谢物:Hist"): 找不到功能" ceil"
为什么要问我" ceil"这是什么意思?我只想绘制直方图? 我的数据以4行乘200列表示,第一列是4个不同的变量名称。即每行代表来自不同变量的数据。
我在想它,因为我需要分别对每一行进行直方图,而不是试图对所有数据进行直方图。这可能是错误出现的原因吗?
我正在使用包histplot.r,这是histplot的脚本:
histplot <- function(x,sam) {
nn <- ceil(sqrt(length(x)))
BW <- (max(x)-min(x))/nn
xxx <- hist(x, freq = TRUE, main=sam)
N <- xxx$counts # Get the freq distribution
MIDS <- xxx$mids # Get the centres
Xaxis <- seq(min(x), max(x), by = 0.01)
MU <- mean(x)
SIGMA <- std(x)
y <- exp(-0.5 * ((Xaxis - MU)/SIGMA)^2) / (sqrt(2*pi) * SIGMA)
matplot(Xaxis, (y * BW * sum(N)), type="l", col = 2, lty = 1, lwd = 1, add = TRUE)
abline(a=NULL,b=NULL, h=NULL, v=MU, col=3, lty=2, lwd=1) # Add mean
abline(a=NULL,b=NULL, h=NULL, v=MU-SIGMA, col=4, lty=2, lwd=1) # Add mean-stdev
abline(a=NULL,b=NULL, h=NULL, v=MU+SIGMA, col=4, lty=2, lwd=1) # Add mean+stdev
}
当我在Rstudio,屏幕1的脚本中运行时,histplot不起作用。这是我的完整脚本:
rm(list=ls())
graphics.off()
source("histplot.r")
source("normplot.r")
X <- read.table("metabolites.csv",sep=",",header=FALSE)
x11()
split.screen(c(1,2))
screen(1)
histplot (t(X), "Metabolites: Hist")
screen(2)
bbb <- qqplot(t(X), ppoints(t(X)), ylab =
"Probability", main = "metabolites: Norm")
qqplot(bbb)
答案 0 :(得分:1)
ceil
函数是histplot
在引擎盖下使用的函数。它不是标准R安装的一部分,也不是您加载的任何其他软件包的一部分。这会导致您获得错误,但无法找到ceil
函数。我怀疑ceil
函数与ceiling
函数具有相同的功能,但我只是在这里推测。
ceil
函数可能是histplot
包依赖的包的一部分。尝试使用dependencies = TRUE
重新安装软件包。根据您的评论,您需要加载matlab
包,其中包含ceil
函数。