[未知用户] 去年我跟我们公司一技术人员讨论 GPU 时,就琢磨:如果能用 GPU 跑 R,那就爽了。当然只是一厢情愿,估计会有很多技术细节:)
WinBUGS在统计分析中的应用(第三部分)
7 天 后
我正在用WinBUGS做mcmc。想请问个问题:WinBUGS中反三角函数和圆周率怎么表示啊??
11 天 后
大家好
请教一下winbugs可以用Doodle来建模,这个例子中的b[1:N] ~ car.normal(adj[], weights[], num[], tau)该怎样用Doodle来建模,还有
alpha0 ~ dflat()这个dflat在density中也没有啊,这个该怎么解决.
非常感谢!!
请教一下winbugs可以用Doodle来建模,这个例子中的b[1:N] ~ car.normal(adj[], weights[], num[], tau)该怎样用Doodle来建模,还有
alpha0 ~ dflat()这个dflat在density中也没有啊,这个该怎么解决.
非常感谢!!
请教一下,如何用winbugs来编一些复杂的分布函数?
1 个月 后
[未知用户] 如果你用word的话,直接ctrl-c + ctrl-v就行了。如果是LaTex的话,最好存储成.ps文件。不过我通常都将结果输出在R,然后利用R强大的图形功能作图。
[未知用户] 你需要下载Blackbox,即BUGS的开发软件,然后自己编写需要的distribution.具体请参见
http://www.winbugs-development.org.uk/wbdev.html
http://www.winbugs-development.org.uk/wbdev.html
[未知用户] 首先,car.normal是一个用户定义的分布函数,所以你在BUGS自带的函数中无法找到,自然也就无法将它在doodle中画出来。
其次,dflat()在distribution中有,只不过没有在user manual中列出来罢了。但是,强烈建议不要使用这个distribution,因为他的source code并没有对他的边界有一个很好的定义,以至于在一些复杂的model很容易让程序crash. 几个比较好的替代有: dunif(), dnorm(),dbeta().
dunif(a, b)很简单,只要自己定义边界就可以了。
dnorm(mean,precision)其实最实用,只要把precision设得小一些就可以了,比如0.000001,通常我们都会用这个来代替dunif()。
dbeta(1,1)也可以用来代替dunif().
其次,dflat()在distribution中有,只不过没有在user manual中列出来罢了。但是,强烈建议不要使用这个distribution,因为他的source code并没有对他的边界有一个很好的定义,以至于在一些复杂的model很容易让程序crash. 几个比较好的替代有: dunif(), dnorm(),dbeta().
dunif(a, b)很简单,只要自己定义边界就可以了。
dnorm(mean,precision)其实最实用,只要把precision设得小一些就可以了,比如0.000001,通常我们都会用这个来代替dunif()。
dbeta(1,1)也可以用来代替dunif().
[未知用户] 反三角函数比较难一些,比如arctan(x)用微分可以表示为darctan(x)/dx=1/(1+x^2),你需要在WBDiff中编写一个微分函数来求x,具体WBDiff的编写可以参考
http://www.winbugs-development.org.uk/wbdiff.html
pi的表示很简单,你在你的data中定义一个pi=3.1415926,然后在model中使用pi就可以了。
http://www.winbugs-development.org.uk/wbdiff.html
pi的表示很简单,你在你的data中定义一个pi=3.1415926,然后在model中使用pi就可以了。
小弟现正在剑桥mrc-bsu做postdoc,具体的项目就是BUGS的开发以及在生物及医学方面应用。WinBUGS这个软件是我两个老板 David Spiegehalter,Dave Lunn 和其它一些牛人共同开发的。我们现在正在从WinBUGS 转向openBUGS,目的是将它做成open source的软件以应用在更广的领域。我现在正在开发BUGS中的WBDiff部分并将它应用在二型糖尿病的动态系统的数据分析中。有兴趣或有问题的同学可以和我联系:
chen.wei@mrc-bsu.cam.ac.uk
还有我们这里每年会举办3-4次BUGS的培训,2天的课程,在英国或能到英国出差的同学有兴趣的话可以参加,主讲人是David speigehalter 和 Dave Lunn。
chen.wei@mrc-bsu.cam.ac.uk
还有我们这里每年会举办3-4次BUGS的培训,2天的课程,在英国或能到英国出差的同学有兴趣的话可以参加,主讲人是David speigehalter 和 Dave Lunn。
楼主
你好:
还有一个问题麻烦你,GeoBUGS可以做简单的空间数据分析,map tool里面的地图只有很少的几个国家,请问一下,如果想做中国的空间数据,应该怎么办?
非常感谢楼主回答。
你好:
还有一个问题麻烦你,GeoBUGS可以做简单的空间数据分析,map tool里面的地图只有很少的几个国家,请问一下,如果想做中国的空间数据,应该怎么办?
非常感谢楼主回答。
GeoBUGS 界面只能完成简单及有限的数据分析,要想做自己的数据分析,最简单的方式是以楼主附录中列出的model作为source code模板,根据自己的模型加以改动,然后load进你的data,进行mcmc采样分析。
[未知用户] 可以从ArcInfo中通过工具将txt格式的地图数据导出,然后在GeoBUGS中导入。
[未知用户] 可以,具体可以了解OpenBUGS的开发文档。不过pascal语言过于古老,实在不是很适用于目前很多开放平台。有兴趣的同志可以研究。目前我公司也在着力研究开发有关内容。基本上会吸收OpenBUGS的一部分代码,并在sampling的计算中引入更加高效的计算机制。
[未知用户] 很好啊,希望学成之后可以为国效力开发国人自己的专业统计软件。
[未知用户] 当然了ArcInfo中的中国地图的shp文件可以在网上搜索。如果你要做Spatial Data Analysis,又不想自己开发软件,目前恐怕最好的方式就是WinBUGS+GeoBUGS+ArcInfo来做了。当然了R中的GeoR Package也可以利用,不过不一定能达到你的模型要求,需要自己再开发。当然了其实GeoBUGS中的地图数据相对简单,就是把地理区块分成多边形,每个多边形有边界上的点的经纬度坐标定义。如果你可以得到中国行政区域的边界经纬度(如通过一些GIS软件),直接用记事本编辑一个文本格式的map文件也未尝不是一件一劳永逸的事情。
[未知用户] 之前给出的disease mapping那本书中的Ohio空气污染致使肺病的区域性分布规律的研究,有用GeoBUGS的完整范例,以及不同模型之间的比较性分析,可以参考。如果是自己的研究数据,如针对中国某省份的某种疾病受某种空间因素的影响,那你就需要找到那个区域的各个子区域的边界经纬度值,然后根据GeoBUSG的文档来创建map文件。除非你的模型非常特殊,BUGS应付不了,不然应该能满足通常的需求。
您好:
本人是初学者,对ArcInfo软件不熟悉,可不可以提供ArcInfo中的中国地图txt格式的文件,或者ArcInfo中的中国地图的shp文件的下载地址,我的毕业论文想做一个关于中国各省车险费率的一个比较,想通过GeoBUGS中的作图工具标出不同省市的费率差别,以期达到更直观的目的,恳请赐教。
我的邮箱是hongaf@163.com,如果可能的话可不可以发给我现成的中国地图的txt文件。
非常非常非常感谢。
本人是初学者,对ArcInfo软件不熟悉,可不可以提供ArcInfo中的中国地图txt格式的文件,或者ArcInfo中的中国地图的shp文件的下载地址,我的毕业论文想做一个关于中国各省车险费率的一个比较,想通过GeoBUGS中的作图工具标出不同省市的费率差别,以期达到更直观的目的,恳请赐教。
我的邮箱是hongaf@163.com,如果可能的话可不可以发给我现成的中国地图的txt文件。
非常非常非常感谢。
楼主:
您好
昨天找了一个ArcInfo中的中国地图的shp文件,转化成Txt文件如下:请问一下导入到GeoBUGS中是不是要按照手册中说明的进行转化,只要x,y轴的坐标吗?另外手册中有些地方不是太明白,能否简单说明一下,恳请赐教。非常感谢
"CHINESE" "OBJECTID" "AREA" "PERIMETER" "BOU2_4M_" "BOU2_4M_ID" "ADCODE93" "ADCODE99" "NAME" "SHAPE_LENG" "SHAPE_AREA"
"黑龙江省" 1.00 54.44 68.48 2.00 23.00 230000.00 230000.00 "黑龙江省" 68.48 54.44
"内蒙古自治区" 2.00 129.11 129.93 3.00 15.00 150000.00 150000.00 "内蒙古自治区" 129.93 129.11
"新疆维吾尔自治区" 3.00 175.59 84.90 4.00 65.00 650000.00 650000.00 "新疆维吾尔自治区" 84.90 175.59
"吉林省" 4.00 21.31 41.18 5.00 22.00 220000.00 220000.00 "吉林省" 41.18 21.31
"辽宁省" 5.00 15.60 38.37 6.00 21.00 210000.00 210000.00 "辽宁省" 38.37 15.60
"甘肃省" 6.00 41.50 76.78 7.00 62.00 620000.00 620000.00 "甘肃省" 76.78 41.50
"河北省" 7.00 19.50 44.87 8.00 13.00 130000.00 130000.00 "河北省" 44.87 19.50
"北京市" 8.00 1.73 8.49 9.00 11.00 110000.00 110000.00 "北京市" 8.49 1.73
"辽宁省" 9.00 .00 .08 10.00 292.00 210000.00 210000.00 "辽宁省" .08 3.5254793e-04
10.00 .00 .04 11.00 292.00 210000.00 210000.00 "辽宁省" .04 9.50439e-05
11.00 .00 .09 12.00 292.00 210000.00 210000.00 "辽宁省" .09 3.1496021e-04
12.00 .00 .11 13.00 319.00 210000.00 210000.00 "辽宁省" .11 2.5133896e-04
13.00 .00 .06 14.00 319.00 210000.00 210000.00 "辽宁省" .06 1.3371631e-04
14.00 .00 .05 15.00 319.00 210000.00 210000.00 "辽宁省" .05 1.3836321e-04
15.00 .00 .04 16.00 292.00 210000.00 210000.00 "辽宁省" .04 7.369642e-05
16.00 .00 .06 17.00 292.00 210000.00 210000.00 "辽宁省" .06 2.0278453e-04
17.00 .00 .05 18.00 292.00 210000.00 210000.00 "辽宁省" .05 1.8421644e-04
18.00 .00 .06 19.00 319.00 210000.00 210000.00 "辽宁省" .06 1.438344e-04
19.00 .00 .07 20.00 319.00 210000.00 210000.00 "辽宁省" .07 2.4434132e-04
您好
昨天找了一个ArcInfo中的中国地图的shp文件,转化成Txt文件如下:请问一下导入到GeoBUGS中是不是要按照手册中说明的进行转化,只要x,y轴的坐标吗?另外手册中有些地方不是太明白,能否简单说明一下,恳请赐教。非常感谢
"CHINESE" "OBJECTID" "AREA" "PERIMETER" "BOU2_4M_" "BOU2_4M_ID" "ADCODE93" "ADCODE99" "NAME" "SHAPE_LENG" "SHAPE_AREA"
"黑龙江省" 1.00 54.44 68.48 2.00 23.00 230000.00 230000.00 "黑龙江省" 68.48 54.44
"内蒙古自治区" 2.00 129.11 129.93 3.00 15.00 150000.00 150000.00 "内蒙古自治区" 129.93 129.11
"新疆维吾尔自治区" 3.00 175.59 84.90 4.00 65.00 650000.00 650000.00 "新疆维吾尔自治区" 84.90 175.59
"吉林省" 4.00 21.31 41.18 5.00 22.00 220000.00 220000.00 "吉林省" 41.18 21.31
"辽宁省" 5.00 15.60 38.37 6.00 21.00 210000.00 210000.00 "辽宁省" 38.37 15.60
"甘肃省" 6.00 41.50 76.78 7.00 62.00 620000.00 620000.00 "甘肃省" 76.78 41.50
"河北省" 7.00 19.50 44.87 8.00 13.00 130000.00 130000.00 "河北省" 44.87 19.50
"北京市" 8.00 1.73 8.49 9.00 11.00 110000.00 110000.00 "北京市" 8.49 1.73
"辽宁省" 9.00 .00 .08 10.00 292.00 210000.00 210000.00 "辽宁省" .08 3.5254793e-04
10.00 .00 .04 11.00 292.00 210000.00 210000.00 "辽宁省" .04 9.50439e-05
11.00 .00 .09 12.00 292.00 210000.00 210000.00 "辽宁省" .09 3.1496021e-04
12.00 .00 .11 13.00 319.00 210000.00 210000.00 "辽宁省" .11 2.5133896e-04
13.00 .00 .06 14.00 319.00 210000.00 210000.00 "辽宁省" .06 1.3371631e-04
14.00 .00 .05 15.00 319.00 210000.00 210000.00 "辽宁省" .05 1.3836321e-04
15.00 .00 .04 16.00 292.00 210000.00 210000.00 "辽宁省" .04 7.369642e-05
16.00 .00 .06 17.00 292.00 210000.00 210000.00 "辽宁省" .06 2.0278453e-04
17.00 .00 .05 18.00 292.00 210000.00 210000.00 "辽宁省" .05 1.8421644e-04
18.00 .00 .06 19.00 319.00 210000.00 210000.00 "辽宁省" .06 1.438344e-04
19.00 .00 .07 20.00 319.00 210000.00 210000.00 "辽宁省" .07 2.4434132e-04
楼主
不好意思,还得问一下,上面的那个TXT文件是扩展名是dbf的文件导出的,那个扩展名是shp的文件是必须用ArcInfo打开才能导出txt文件吗?网上找不到免费的ArcInfo文件,能不能帮忙解决一下。
万分感谢。
不好意思,还得问一下,上面的那个TXT文件是扩展名是dbf的文件导出的,那个扩展名是shp的文件是必须用ArcInfo打开才能导出txt文件吗?网上找不到免费的ArcInfo文件,能不能帮忙解决一下。
万分感谢。
2 年 后
各位,大家好!遇到一个棘手而又紧迫的问题。
我使用WinBUGS编写了一个二水平时空效应模型。但是update后,只能迭代几百次。很是郁闷!调整先验分布、初始值,均不能改善。所以,请各位帮助一下。看调整哪里比较合适。怎么才能收敛。因为我不是学数理统计的,我是学医学的。所以,请大家务必说的详细一些!如果留下联系方式,电话或者EMAIL请教的话更好!我的QQ:55996194
看其他文章和帖子都是迭代几万次。我的数据量比较大。一共4212个记录,5个变量。其中包括3个随机变量。
不知道问题出在哪里?还请大家多多指点!
model{
for (i in 1:m)
{
for (t in 1:T)
{
#Binomial likelihood for observed counts
bin[i,t] ~ dbern(prop[i,t])
logit(prop[i,t])<-a+b*year1[t]+c[1]*lst_rank[i,t]+c[2]*m3_3[i,t]+u
}
a<-a1+a2+c[3]*km_rank
b<-b1+b2
a2 ~ dnorm(0,tau.a2)
b2 ~ dnorm(0,tau.b2)
}
#CAR prior distribution for spatial correlated heterogeneity
u[1:m] ~ car.proper(mu[],w[],adj[],num[],M[],tau.u,gamma)
for (i in 1:m)
{
mu<-0.01
M<-1/num
}
gamma.min <- min.bound(w[], adj[], num[], M[])
gamma.max <- max.bound(w[], adj[], num[], M[])
gamma ~ dunif(gamma.min, gamma.max)
#Other priors
for (i in 1:3){
c~ dnorm(0,1.0E-6)
}
a1 ~ dnorm(0,1.0E-6)
b1 ~ dnorm(0,1.0E-6)
tau.a2 ~ dgamma(0.01,0.01)
tau.b2 ~ dgamma(0.01,0.01)
}
我使用WinBUGS编写了一个二水平时空效应模型。但是update后,只能迭代几百次。很是郁闷!调整先验分布、初始值,均不能改善。所以,请各位帮助一下。看调整哪里比较合适。怎么才能收敛。因为我不是学数理统计的,我是学医学的。所以,请大家务必说的详细一些!如果留下联系方式,电话或者EMAIL请教的话更好!我的QQ:55996194
看其他文章和帖子都是迭代几万次。我的数据量比较大。一共4212个记录,5个变量。其中包括3个随机变量。
不知道问题出在哪里?还请大家多多指点!
model{
for (i in 1:m)
{
for (t in 1:T)
{
#Binomial likelihood for observed counts
bin[i,t] ~ dbern(prop[i,t])
logit(prop[i,t])<-a+b*year1[t]+c[1]*lst_rank[i,t]+c[2]*m3_3[i,t]+u
}
a<-a1+a2+c[3]*km_rank
b<-b1+b2
a2 ~ dnorm(0,tau.a2)
b2 ~ dnorm(0,tau.b2)
}
#CAR prior distribution for spatial correlated heterogeneity
u[1:m] ~ car.proper(mu[],w[],adj[],num[],M[],tau.u,gamma)
for (i in 1:m)
{
mu<-0.01
M<-1/num
}
gamma.min <- min.bound(w[], adj[], num[], M[])
gamma.max <- max.bound(w[], adj[], num[], M[])
gamma ~ dunif(gamma.min, gamma.max)
#Other priors
for (i in 1:3){
c~ dnorm(0,1.0E-6)
}
a1 ~ dnorm(0,1.0E-6)
b1 ~ dnorm(0,1.0E-6)
tau.a2 ~ dgamma(0.01,0.01)
tau.b2 ~ dgamma(0.01,0.01)
}