24小时热门版块排行榜    

Znn3bq.jpeg
查看: 671  |  回复: 7
当前主题已经存档。

loappleve

金虫 (小有名气)

[交流] 求助 如何实现leava one out

用多元线性回归建模以后 如果做leave one out 检验
有什么软件可以实现 自己写的话 需要输出什么结果

[ Last edited by csfn on 2008-12-29 at 20:16 ]
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)


spur(金币+1,VIP+0): 感谢参与!欢迎常来!
我以前在这里贴过一个用 R 语言写的 leave-one-out 的小程序,可以找找看,呵呵
2楼2008-01-11 14:19:04
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

2006Jerry

金虫 (正式写手)

没有搜到啊!
能否请snoopyzhao发一份啊!
谢谢!
gzg_123@tom.com
3楼2008-01-11 14:43:02
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)

★ ★ ★ ★ ★
zzgyb(金币+5,VIP+0):谢谢您的参与,欢迎您常来计算模拟版。
两年前写的,仅供参考。
CODE:
cv.lm <- function(obj, loo = TRUE) {
#
# The Leave-One-Out (LOO) and/or Leave-Group-Out (LGO) Cross-Validation in R for (Multiple) Linear Regression.
#
# Input:
#   obj: the model of MLR
#   loo: logic, if FALSE, do LGO CV
#
# Note:
#   the following two varible should be assigned according to the number of observation in the data set.
#   m: the number of loop when doing validation.
#   n: the number of removed observations.
#
# Output:
#   q.squared: cross-validation relation coefficient.
#   SDEP: Standard Deviation of Error of Predictions
#   newsq: variance in Y explained only for LOO CV
#
# Usage:
# loo <- cv.lm(obj)
# lgo <- cv.lm(obj, loo = FALSE)
#
# Copyright (C) 2005
#
        data <- data.frame(y = obj$model[,1], x = obj$model[, -1])
        N <- nrow(data)
        if (loo == TRUE) {
                ytest <- data[, 1]
                newrsq <- numeric(N)
                ypred <- numeric(N)
                for(i in 1:N){
                        newtrain <- data[-i, ]
                        xtest <- data[i, -1]
                        newfm <- lm(y ~., data = newtrain)
                        newrsq[i] <- summary(newfm)$r.squared
                        ypred[i] <- predict(newfm, xtest)
                }
        }
        else {
                m <- 40
                n <- round(N / 10)
                newrsq <- numeric(m)
                ytest <- numeric(m*n)
                ypred <- numeric(m*n)
                for (i in 1:m) {
                        j <- sample(N, n, replace = FALSE)
                        newtrain <- data[-j, ]
                        xtest <- data[j, -1]
                        ytest[((i-1) * n + 1):(i * n)] <- data[j, 1]
                        newfm <- lm(y ~., data = newtrain)
                        ypred[((i-1) * n + 1):(i * n)] <- predict(newfm, xtest)
                }
        }
        q.squared <- 1 - sum((ytest - ypred)^2) / sum((ytest - mean(ytest))^2)
        if (loo == TRUE) {
                SDEP <- sqrt(sum((ytest - ypred)^2) / N)
        }
        else {
                SDEP <- sqrt(sum((ytest - ypred)^2) / (m * n))
        }
        if (loo == TRUE) {
                return(list(q.squared = q.squared, SDEP = SDEP, newrsq = newrsq))
        }
        else {
                return(list(q.squared = q.squared, SDEP = SDEP))
        }
}

4楼2008-01-12 10:09:19
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

loappleve

金虫 (小有名气)

clc
clear
[filename, pathname]= uigetfile('*.xls');
file=[pathname filename];
a=xlsread(file);
[m,n]=size(a);
b=zeros(m-1,n);
c=zeros(m,n-1);
d=zeros(m,1);
k=1;
for i=1:m
    k=1;
    for j=1:m
        if j~=i
            b(k,=a(j,;
            k=k+1;
        end
    end
    c(i,=(b(:,1:n-1)\b(:,n))';
    d(i)=a(i,1:n-1)*(c(i,');
end
5楼2008-01-12 12:12:21
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

2006Jerry

金虫 (正式写手)

楼上的:你发的这个程序是干什么的呢?
6楼2008-01-14 18:20:35
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

juju550

金虫 (小有名气)

请高手们发一个可用的留一法Matlab程序啥,自己编的好象有些问题

着急着想用啊,先谢过了!

顺便把调用格式也说明一下

太感谢了!
7楼2008-01-16 23:59:55
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

匿名

用户注销 (小有名气)


本帖仅楼主可见
8楼2008-01-31 11:15:20
已阅   申请仿真EPI   回复此楼   编辑   查看我的主页
相关版块跳转 我要订阅楼主 loappleve 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考博] 云南大学材料与能源学院解琳课题组钙钛矿博士招生 +4 光伏爱好者 2026-05-17 6/300 2026-05-21 01:37 by 17520222914
[有机交流] 反应很差,大量原料没有反应 5+3 Mr.Zot 2026-05-19 8/400 2026-05-20 22:19 by Equinoxhua
[基金申请] 面上本子正文33页,违规吗?会被低分嘛? +11 1234567wang 2026-05-17 13/650 2026-05-20 18:55 by tanfancy
[基金申请] 提交了我也来说说感想 +6 fummck 2026-05-20 6/300 2026-05-20 17:29 by 姜太公烤鱼
[论文投稿] Sci. Bull. 悲剧经验 +6 jyang1999 2026-05-16 7/350 2026-05-20 16:39 by feng6531
[基金申请] 国自然评分 +3 无名者登山 2026-05-20 4/200 2026-05-20 13:29 by vito刘
[考博] 如果工作了想读博,可以边工作边读全日制嘛? 30+3 铁达火车 2026-05-18 5/250 2026-05-20 09:33 by tfang
[有机交流] 如何实现卤原子转化 +3 BT20230424 2026-05-15 8/400 2026-05-20 09:32 by xtlilibin
[基金申请] 河北省自然科学基金 +3 Peterchao 2026-05-18 3/150 2026-05-20 08:57 by 霸_霸
[教师之家] 上海大学实验技术岗位非升即走 +12 嘻嘻哈哈乐呵呵 2026-05-15 13/650 2026-05-20 08:34 by xli1984
[文学芳草园] 献血感触 +6 呀呀好傻 2026-05-19 11/550 2026-05-19 22:26 by 而立得乐
[基金申请] 2026山东省优青 +3 luckinging 2026-05-14 4/200 2026-05-19 16:15 by 52wls
[考博] 找博士生导师 +6 小代想上岸 2026-05-15 7/350 2026-05-19 10:22 by free_fisher
[考博] 26/27申博自荐-锂/钠电池方向 5+3 狗头军师. 2026-05-15 4/200 2026-05-19 09:10 by moonboat
[基金申请] 别被青基扩招骗了!26年科研内卷才刚刚开始 +3 国自然国社科中 2026-05-14 4/200 2026-05-19 08:48 by archvillain
[考博] 2026博士还有哪些学校有名额 +7 小王求读研 2026-05-15 8/400 2026-05-19 08:27 by zhyzzh
[基金申请] 国自然上会要求 +5 无名者登山 2026-05-18 9/450 2026-05-18 17:50 by BlakeReary
[硕博家园] 我在等一个没有答案的答案 +3 Love_MH 2026-05-17 3/150 2026-05-18 02:22 by 竹林孤影
[考博] 光量子物理方向 博士招生 1人(2026.09) +3 sandyworld 2026-05-15 4/200 2026-05-17 14:38 by sandyworld
[硕博家园] 申请博士 +3 呃?呃 2026-05-15 3/150 2026-05-16 11:01 by a4742549
信息提示
请填处理意见