楼主: 秦红
1127 6

[问答] 大神们,怎么把这个编辑进r语言里面,求救★! [推广有奖]

  • 0关注
  • 0粉丝

高中生

15%

还不是VIP/贵宾

-

威望
0
论坛币
605 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
1139 点
帖子
22
精华
0
在线时间
14 小时
注册时间
2015-12-13
最后登录
2018-9-28

楼主
秦红 发表于 2018-7-31 20:46:16 来自手机 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
最开始的x,和参数是给定的,对参数进行模拟,看模拟的参数是否与给定的参数一致
1533041178864875.jpeg
二维码

扫码加我 拉你入群

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

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

关键词:R语言

沙发
啊啊啊啊啊吖 发表于 2018-8-2 16:43:19
你是要把这个过程在R里实现吗

藤椅
秦红 发表于 2018-8-2 19:17:38 来自手机
啊啊啊啊啊吖 发表于 2018-8-2 16:43
你是要把这个过程在R里实现吗
嗯嗯,是的,我自己写了一个代码,但是结果很差

板凳
秦红 发表于 2018-8-2 19:53:30
set.seed(1234)
N<-1:30###重复的次数
n<-sum(N)
n1<-2000
b<-rep(1,3)###原始系数
x<-matrix(rnorm(length(N)*(length(b)-1)),ncol = length(b)-1)
X<-cbind(rep(1,length(N)),x)
colnames(X)<-c('x0','x1','x2')
p<-exp(X%*%b)/(1+exp(X%*%b))
y<-matrix(NA,length(N))
for(i in 1:length(N)){
  y[i,]<-sum(rbinom(N[i],1,p[i]))
}##生成的y
cf<-function(X,y){
  u<-list(NULL)
  length(u)<-length(N)
  for(i in 1:length(N)){
    for(j in 1:n1)
      u[[i]][[j]]<-sort(runif(N[i]))
  }
  k<-list(NULL)
  length(k)<-length(N)
  for(i in 1:length(N)){
    for(l in 1:n1){
      if(N[i]==1){
        k[[i]]<-mean(u[[i]])
      }else{
        h<-u[[i]][[1]]
        for(j in 1:n1) {
          if(j<=n1){
            h<-u[[i]][[j]]+h
          }}
        h<-h-u[[i]][[1]]
        k[[i]]<-h/n1
      }
    }
  }
  p1<-matrix(NA,length(N))
  for(i in 1:length(N)){
    if(y[i]==0){
      p1[i]<-0.5*k[[i]]
    }else if(y[i]==N[i]){
      p1[i]<-0.5*(k[[i]][as.numeric(y[i])]+1)
    }else{
      p1[i]<-0.5*(k[[i]][as.numeric(y[i])]+k[[i]][as.numeric(y[i])+1])
    }
  }
  library('MASS')##p1就是p*
  B1<-ginv(t(X)%*%X)%*%t(X)%*%log(p1/(1-p1))
  return(B1)
}
B1<-cf(X,y)
B1###模拟得出的系数
大神们看看我的程序哪里有错吗?

报纸
秦红 发表于 2018-8-2 19:55:32
秦红 发表于 2018-8-2 19:17
嗯嗯,是的,我自己写了一个代码,但是结果很差
set.seed(1234)
N<-1:30###重复的次数
n<-sum(N)
n1<-2000
b<-rep(1,3)###原始系数
x<-matrix(rnorm(length(N)*(length(b)-1)),ncol = length(b)-1)
X<-cbind(rep(1,length(N)),x)
colnames(X)<-c('x0','x1','x2')
p<-exp(X%*%b)/(1+exp(X%*%b))
y<-matrix(NA,length(N))
for(i in 1:length(N)){
  y[i,]<-sum(rbinom(N,1,p))
}##生成的y
cf<-function(X,y){
  u<-list(NULL)
  length(u)<-length(N)
  for(i in 1:length(N)){
    for(j in 1:n1)
      u[][[j]]<-sort(runif(N))
  }
  k<-list(NULL)
  length(k)<-length(N)
  for(i in 1:length(N)){
    for(l in 1:n1){
      if(N==1){
        k[]<-mean(u[])
      }else{
        h<-u[][[1]]
        for(j in 1:n1) {
          if(j<=n1){
            h<-u[][[j]]+h
          }}
        h<-h-u[][[1]]
        k[]<-h/n1
      }
    }
  }
  p1<-matrix(NA,length(N))
  for(i in 1:length(N)){
    if(y==0){
      p1<-0.5*k[]
    }else if(y==N){
      p1<-0.5*(k[][as.numeric(y)]+1)
    }else{
      p1<-0.5*(k[][as.numeric(y)]+k[][as.numeric(y)+1])
    }
  }
  library('MASS')##p1就是p*
  B1<-ginv(t(X)%*%X)%*%t(X)%*%log(p1/(1-p1))
  return(B1)
}
B1<-cf(X,y)
B1###模拟得出的系数
想问一问我的程序哪里有错误,为什么模拟的结果比glm的差很多

地板
秦红 发表于 2018-8-7 19:20:42 来自手机
秦红 发表于 2018-7-31 20:46
最开始的x,和参数是给定的,对参数进行模拟,看模拟的参数是否与给定的参数一致
来个人给看一下,谢谢

7
秦红 发表于 2018-8-9 19:21:32 来自手机
秦红 发表于 2018-7-31 20:46
最开始的x,和参数是给定的,对参数进行模拟,看模拟的参数是否与给定的参数一致
能给点播一下吗?

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-30 06:27