全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
4382 2
2015-10-09
《数量生态学——R语言的应用》赖江山译
3.4.3 环境变量之间的Pearson线性相关系数r
env.pearson<-cor(env)
round(env.pearson,2)
env.o<-order.single(env.pearson)
op<-par(mfrow=c(1,1),pty="s")
pairs(env[,env.o],lower.panel = panel.smooth,upper.panel = panel.cor,diag.panel = panel.hist,main="Pearman Correlation Matrix")
在R控制台中出现报错:
Error in pairs.default(env[, env.o], lower.panel = panel.smooth, upper.panel = panel.cor,  :

  object 'panel.cor' not found
解决方法:

1.在控制台敲入?pairs


2.弹出的页面中可以找到以下函数
panel.cor <- function(x, y, digits = 2, prefix = "", cex.cor, ...)
{
    usr <- par("usr"); on.exit(par(usr))
    par(usr = c(0, 1, 0, 1))
    r <- abs(cor(x, y))
    txt <- format(c(r, 0.123456789), digits = digits)[1]
    txt <- paste0(prefix, txt)
    if(missing(cex.cor)) cex.cor <- 0.8/strwidth(txt)
    text(0.5, 0.5, txt, cex = cex.cor * r)

}
3.在R控制台执此函数然后再执行pair函数即可
4.若继续出现报错“Error in pairs.default(env[, env.o], lower.panel = panel.smooth, upper.panel = panel.cor,  :
  object 'panel.hist' not found
5.在?pairs文件中找到如下函数并执行即可
panel.hist <- function(x, ...)
{
    usr <- par("usr"); on.exit(par(usr))
    par(usr = c(usr[1:2], 0, 1.5) )
    h <- hist(x, plot = FALSE)
    breaks <- h$breaks; nB <- length(breaks)
    y <- h$counts; y <- y/max(y)
    rect(breaks[-nB], 0, breaks[-1], y, col = "cyan", ...)

}

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2015-10-10 23:24:58
厉害~学习了。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-10-14 16:25:32
初来乍到 多多指教
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群