anning189
常见到有人用C++来开发小的统计软件,或者具有特点计算功能的应用软件
而用来C计算太复杂,程序不好编
是否可以借助什么工具或者方法来开发一个独立的可视化软件,这个软件的底层运算是用R来完成的
请高人指点,谢谢
longoR
It depends on what you mean by "lower level computations".
If you mean anything written in C during R development, then it's
an easy problem - just #define STANDALONE would probably be fine.
If you mean those functions written in R language, then it's not
so easy to me. It seems that we have to have an interpreter to be included,
and hence essentially no difference with having an R installed.
anning189
我的“小统计软件”是指具有简单统计功能的独立软件
比如,我们现在不用SAS,SPSS,SPLUS,eviews等等
自己开发一个软件,实现回归分析等统计方法
当然我们可以用诸如VC++等工具开发,关键是用C来实现回归分析麻烦,复杂方法难实现
我的意思是,有没有可能开发一个独立软件(可以拿到其他pc上安装使用),其底层计算部分代码是R。
longoR
a naive regression is easy, but keep in mind that the actual computations on regression in most softwares are often not the way we learnt in introductory classes.
jyma
用IMSL, 用C做回归分析比R难不倒哪去.
anning189
[quote]引用第4楼jyma于2007-04-05 12:39发表的“”:
用IMSL, 用C做回归分析比R难不倒哪去.[/quote]
回归分析c是难不到哪去,只是一个例子
做cointegration恐怕C就不行了
sheldonpeng
用ActiveTCL做Tk界面和R目录打成安装包 远程调用Script形成server 输出HTML或者字符串及图像都可以了
yihui
唉,我就担心做了界面,R就沦为“傻瓜”软件了——大部分情况下都是傻瓜(没有贬义)在用,点了按钮算出来是什么东西又只有鬼知道了。命令行的形式能促进人去仔细研究函数参数的含义以及相应的理论,GUI往往导致统计的庸俗化。
bjt
[quote]引用第7楼谢益辉于2007-04-11 23:53发表的“”:
唉,我就担心做了界面,R就沦为“傻瓜”软件了——大部分情况下都是傻瓜(没有贬义)在用,点了按钮算出来是什么东西又只有鬼知道了。命令行的形式能促进人去仔细研究函数参数的含义以及相应的理论,GUI往往导致统计的庸俗化。[/quote]
Nod!
引用一位仁兄的话“spss 这类软件,偷懒时还可以考虑一下”
alexru
[quote]引用第7楼谢益辉于2007-04-11 23:53发表的“”:
唉,我就担心做了界面,R就沦为“傻瓜”软件了——大部分情况下都是傻瓜(没有贬义)在用,点了按钮算出来是什么东西又只有鬼知道了。命令行的形式能促进人去仔细研究函数参数的含义以及相应的理论,GUI往往导致统计的庸俗化。[/quote]
support
anning189
[quote]引用第7楼谢益辉于2007-04-11 23:53发表的“”:
唉,我就担心做了界面,R就沦为“傻瓜”软件了——大部分情况下都是傻瓜(没有贬义)在用,点了按钮算出来是什么东西又只有鬼知道了。命令行的形式能促进人去仔细研究函数参数的含义以及相应的理论,GUI往往导致统计的庸俗化。[/quote]
完全这样考虑恐怕不妥,傻瓜软件有它的存在空间,用统计软件的人不一定是统计专业的,他们不可能,也没有必要靠编程来处理数据。
yihui
人们往往容易混淆两个很关键的概念:命令行和编程——大家总是认为这二者是等同的,凡是需要写语句的都称之为“编程”,我认为这是大错特错,事实上在R中绝大多数统计分析都已经有现成的函数,何“编”之有呢?说到底,用代码输入参数的过程与点按钮输入参数的过程没有本质差异,只是很多人已经对命令行持有成见了,因此愿意更倾向于GUI。我想,凡是真正懂得统计原理的人,是不会畏惧命令行语句以及各种参数的。
至于非专业的人,我甚至有一个比较偏激的看法,那就是,不是统计专业人士就最好不要自己动手作统计分析(但是仍然必须学习基础统计知识)。如果大家都去作分析,那就没有必要开设统计专业了——这是个社会分工问题。
不好意思,怎么又跑题跑这么远-_-//
whiz
[quote]引用第11楼谢益辉于2007-04-12 17:03发表的“”:
至于非专业的人,我甚至有一个比较偏激的看法,那就是,不是统计专业人士就最好不要自己动手作统计分析(但是仍然必须学习基础统计知识)。如果大家都去作分析,那就没有必要开设统计专业了——这是个社会分工问题。[/quote]
我同意你的大部分观点,除了引用的这段。统计专业人士并不熟悉研究者的领域,并不了解对方的构思、目的,而难免作出垃圾进垃圾出的东西来。如果说专业分工,我觉得统计专业人士的分工应该是推动统计方法,而非统计操作员。统计分析操作还是具体领域的研究者自己来的好。
yihui
看来要持续跑题了……对不起啊,anning189同学……
呵呵,可能我没表达清楚,我一向的意见还是应该多多采取合作、交流的方式,因为大家各自有各自的专业特长。统计专业人士所推动的方法,至少在国内我觉得很多人是不太重视其原理的,很多人拿着软件计算着高深的模型,却连P-value是什么意思都不懂,这难免导致统计的滥用。
whiz
呵呵,抱歉,我也再跑一下题。
问题是两方面的,的确很多人用统计的人不重视统计原理,我也的确碰到过写完毕业论文却还来问我他自己写的统计分析的意思的人( 有些绕口),但我也去统计系旁听过,说实话,我完全不听不懂统计系的老师和学生在说什么,我向他们请教过的我的实践问题,对方也是一脸茫然。我同意应该多多合作、多多交流,不过问题是两方面的
anning189
我在考虑用什么方法,将R代码生成DLL 或者COM组件
大家有什么建议?
whiz
一定要用R吗?我不太理解你的目的,如果只是想自己开发一套统计软件,我几年前看到过一个用C++编写的一套用于统计的库,可能这个更符合你的要求。因为下载的手册不知道放哪里去了,所以 for your information 一下,如果你不是这个意思,我就可以不用去找了,呵呵。
anning189
[quote]引用第16楼whiz于2007-04-14 18:49发表的“”:
一定要用R吗?我不太理解你的目的,如果只是想自己开发一套统计软件,我几年前看到过一个用C++编写的一套用于统计的库,可能这个更符合你的要求。因为下载的手册不知道放哪里去了,所以 for your information 一下,如果你不是这个意思,我就可以不用去找了,呵呵。[/quote]
总所周知, 用R实现统计方法是最方便的, 最快的.
我们可以先在R上写成code, 然后添加到GUI的软件中, 呵呵.
如果是利用已有的算法,或者code, 当然C++也可以很快的开发出一套统计软件.
但对于新方法就不方便了, 要写好长的code
abel
那就把R封装下,变成一个类似Excel的组件,然后使用C++,甚至VB做一个GUI,还可以保留script的部分,呼呼。
不过似乎tcl\tk依据做了,比如Rcmdr包
也有RCOM了,也有rJava了,不知道做这个的实际意义如何呢?
或者甚至干脆有计算机高手把S语言自己做一个evaluator,实现下?
anning189
[quote]引用第18楼abel于2007-04-16 10:32发表的“”:
那就把R封装下,变成一个类似Excel的组件,然后使用C++,甚至VB做一个GUI,还可以保留script的部分,呼呼。
不过似乎tcltk依据做了,比如Rcmdr包
也有RCOM了,也有rJava了,不知道做这个的实际意义如何呢?
.......[/quote]
将R封装成一个组件???
不懂.
RCOM好像是用来在R调用COM组件的, 不能将R代码生成COM组件吧