统计计算与R语言的资料汇总(截止2016年12月)
本文在Creative Commons许可证下发布。
在fedora Linux上断断续续使用R语言过了9年后,发现R语言在国内用的人逐渐多了起来。由于工作原因,直到今年暑假一个赴京工作的机会与一位统计专业的人士聊天,才知道R语言的强大威力!(当然这里没有贬低SPSS, SAS,Stata的意思)。
R语言是用于统计分析、绘图的语言和操作环境。R是属于GNU系统的一个自由、免费、源代码开放的软件,它是一个用于统计计算和统计制图的优秀工具。它是统计领域广泛使用的诞生于 1980年左右的 S 语言的一个分支。 R是S语言的一种实现。S语言是由 AT&T贝尔实验室开发的一种用来进行数据探索、统计分析、作图的解释型语言。最初S语言的实现版本主要是S-PLUS。S-PLUS是一个商业软件,它基于S语言,并由MathSoft 公司的统计科学部进一步完善。后来Auckland大学的Robert Gentleman 和 Ross Ihaka 及其他志愿人员开发了一个R系统。R的使用与S-PLUS有很多类似之处,两个软件有一定的兼容性。S-PLUS的使用手册,只要经过不多的修改就能成为 R的使用手册。换句话说:R,是S-PLUS的一个“克隆”,但R语言是免费的。
R是一套完整的数据处理、计算和制图软件系统。其功能包括:数据存储和处理系统;数组运算工具(其向量、矩阵运算方面功能尤其强大);完整连贯的统计分析工具;优秀的统计制图功能;简便而强大的编程语言:可操纵数据的输入和输入,可实现分支、循环,用户可自定义功能 。与其说R是一种统计软件,还不如说R是一种数学计算的环境,因为R并不是仅仅提供若干统计程序、使用者只需指定数据库和若干参数便可进行一个统计分析。R的思想是:它可以提供一些集成的统计工具,但更大量的是它提供各种数学计算、统计计算的函数,从而使使用者能灵活机动的进行数据分析,甚至创造出符合需要的新的统计计算方法。 R内建多种统计学及数字分析功能。 R语言的功能也可以透过安装套件(Packages,用户撰写的功能)增强。增加的功能有特殊的统计技术、绘图功能,以及编程介面和数据输出/输入功能。这些软件包是由R语言、 LaTeX、Java及最常用C语言和Fortran撰写。下载的执行档版本会连同一批核心功能的软件包,而根据 CRAN纪录有过千种不同的软件包。其中有几款较为常用,例如用于经济计量、财经分析、人文科学研究以及人工智能。因为S的血缘,R比其他统计学或数学专用的编程语言有更强的面向对象程序设计功能。此外虽然R语言主要用于统计分析或者开发统计相关的软体,但也有人用作矩阵计算。其分析速度可媲美GNU Octave甚至商业软件MATLAB。
该语言的语法表面上类似 C,但在语义上是函数设计语言的(functional programming language)的变种并且和Lisp 以及 APL有很强的兼容性。特别的是,它允许在“语言上计算”(computing on the language)。这使得它可以把表达式作为函数的输入参数,而这种做法对统计模拟和绘图非常有用。
R是一个免费的自由软件,它有UNIX、LINUX、MacOS和WINDOWS版本,都是可以免费下载和使用的。R的主要网站是 http://www.r-project.org。在那儿可以下载到R的安装程序和源代码、各种外挂程序和文档(点击进入:Windows (95 and later),再点击:base,下载SetupR.exe,约18兆,此便是R FOR WINDOWS的安装程序。双击SetupR.exe,按照提示一步步安装即可)。在R的安装程序中只包含了8个基础模块,其他外在模块可以通过CRAN(Comprehensive R Archive Network(R综合典藏网)的简称)获得(http://cran.r-project.org)。
统计编程R语言的更详细的介绍见:
中文官网:http://www.rproject.cn/
英文官网:http://www.r-project.org/
http://cran.r-project.org/other-docs.html
http://cran.r-project.org/mirrors.html
在这里我也给出一些学习R语言的材料共各位需要了解R语言的博友参考。(均来自网上,有版权,请勿商用!)
1. R for Beginners (中文版).pdf
2. R导论.pdf
3. R语言简介.pdf
4. 153 分钟学会R.pdf
5.统计编程的框架与R语言统计分析基础.pdf
6.R语言初步_统计绘图与编程.ppt
7.R语言与统计分析.ppt
最近Springer出了一本用R语言解微分方程的书:Solving Differential Equations in R (Series: Use R!Soetaert, Karline, Cash, Jeff, Mazzia, Francesca,pp248, Springer,2012),希望热心的博友能提供一个电子版。谢谢!书名叫:Solving Differential Equations in R.pdf
R语言资料汇集
R语言教材小结(2016.12)
以下内容转自:常用统计学相关软件及网络资源
1、统计编程、应用软件
(1)、C语言
C语言计算速度快,但是编程难度大
入门教材:
C语言趣味程序百例精解
(2)、Matlab
偏重于矩阵计算
相关教材:(见人大经济论坛)
(a)、Applied Econometrics using MATLAB
(b)、Computational Statistics Handbook with MATLAB
(c)、Applied Statistics Using SPSS, STATISTICA, MATLAB and R
(d)、An Introduction to Statistics in Matlab(可作为入门教材之一)
使用Matlab求解最大、小值时的有用工具:
(a)、fmincon
matlab自带函数,主用用于求解带约束条件时,给定函数的最小值,见相应的matlab help文档。
遗传算法(速度慢)
(b)、fminunc
Matlab自带函数,求解无约束条件下,某给定函数的最小值。
(c)、遗传算法工具箱
http://www.geatbx.com/ea_matlab.html
主要优点:对目标函数几乎没有要求,主要用于目标函数形式比较复杂情况下的优化问题
主要缺点:计算速度慢。
(3)、R语言
http://www.r-project.org/
R是用于统计分析、绘图的语言和操作环境。R是属于GNU系统的一个自由、免费、源代码开放的软件,它是一个用于统计计算和统计制图的优秀工具。R的语言风格和matlab及其类似,数据处理时,均采用向量化处理。R是开源软件,因此在国外的高等院校中较为普及,是统计学、生物学及经济学等相关专业硕士至博士级的学生的必须课程。
但R的主要缺点是,R的内存管理能力较差,运行时会占用较多的内存资源,因此编程过程中,注意及时释放内存。此外,计算速度慢,特别当需要多次循环迭代时,速度极慢。解决的方法是,将需要循环迭代的部分用C或者Fortran语言编写,然后采用相关的接口程序加以调用。
R自带的编辑器较为简单,现在一般都使用开源软件Tinn-R来进行编辑。Tinn-R具有一定的语法检测和高亮显示功能。其下载地址:
http://www.sciviews.org/Tinn-R/
相关教材:
(a)、R语言简介(最初级的入门教材,为R软件自带说明书)
(b)、Time series analysis and its applications with R examples(结合时间序列分析)
(c)、Introductory Statistics with R
(d)、Programming with R(侧重于介绍R语言内在的逻辑和思想,较为高级,需要有一定的编程开发基础)
(e)、Statistics with R(例子为主,较为全面)
(4)、S及S-Plus
S-Plus为商业软件。不过由于凡是能在S-Plus环境运行的程序,基本上都可以在R环境运行。
相关教材:
(a)、Modelling Financial Time Series with S-PLUS
(b)、Applied Smoothing Techniques for Data Analysis The Kernel Approach with S-Plus Illustrations
(c)、Modern Applied Statistics with S (R、S-Plus等语言方面的经典教程)
(d)、S Programming (R、S-Plus等语言方面的经典教程,内容更深刻,比Modern Applied Statistics with S难度大)
(5)、SPSS、SAS
SPSS是社会统计学的应用软件,再开发能力差。但简单易用。在国内较为普及,因此网络上可查找的资源较多
SAS是功能最强大的统计软件,具有优越的大型数据操作能力,为国外统计学专业的必备课程。但入门较难。
相关教程:
(a)、The Little SAS Book.
2、文字编辑软件
(1)、CTex
http://www.ctex.org/HomePage
中文版的latex。它已经集成了文字编辑和pdf编译为一起,是一款优化的数学论文编辑软件。用其编辑出来的数学公式大方美观。支持中文输入和编辑中文论文。
(2)、MikTex
http://www.miktex.org/
开源软件,功能类似于Ctex,但不支持中文编辑。自带的编辑器功能简单,一般结合软件TeXnicCenter和SummtraPDF(均为开源软件)软件使用。
(3)、TeXnicCenter
http://www.texniccenter.org/
开源软件,功能类似于WinEdt编辑器。某些功能甚至超过了WinEdt。
(4)、SummtraPDF
http://blog.kowalczyk.info/software/sumatrapdf/free-pdf-reader.html
PDF阅览器,占硬盘空间极小,编译时无需关闭,因此使用特别方便。此外,使用SummtraPDF还可以阅览djvu格式(http://djvu.org/)的文件,因此功能特别强大。在国外使用非常广泛。
相关教程及论坛地址:
(a)、http://en.wikibooks.org/wiki/LaTeX
(b)、http://bbs.ctex.org/
(5)、UltraEdit和UltraComp
商业软件。具有强大的数据编辑和文字比较功能。可以与上述编程与论文编辑软件结合使用,可极大的提高效率。
3、网络资源
(1)、人大经济论坛
http://bbs.pinggu.org/
可以下载数学相当可观的统计、经济、统计软件类外文电子书籍
(2)、统计之都
http://cos.name/
(3)、小木虫论坛
http://emuch.net/bbs/
讨论科研、出国等方面的主要论坛之一
(4)、R语言中文论坛
http://www.biostatistic.net/forum-42-1.html
统计计算与R语言的资料汇总(截止2016年12月)的更多相关文章
- R语言两种方式求指定日期所在月的天数
R语言两种方式求指定日期所在月的天数 days_monthday<-function(date){ m<-format(date,format="%m& ...
- r语言入门资料
最近有好多r语言的爱好者问我r语言的事情,在百度上简单的收一收,感觉都在扯淡,真正适合初学者入门的资料几乎没有,比如最开始用什么编辑器比较好,在哪下载,最开始学习的例子有什么? 在日本网站上反倒是找 ...
- 皮尔森相似度计算举例(R语言)
整理了一下最近对协同过滤推荐算法中的皮尔森相似度计算,顺带学习了下R语言的简单使用,也复习了概率统计知识. 一.概率论和统计学概念复习 1)期望值(Expected Value) 因为这里每个数都是等 ...
- R语言常用包汇总
转载于:https://blog.csdn.net/sinat_26917383/article/details/50651464?locationNum=2&fps=1 一.一些函数包大汇总 ...
- Go语言学习资料汇总
网站: Go语言官网(访问)(中文镜像) Go语言中文网(访问) Go编译器(访问) Go语言中国社区(访问) golanghome(访问) GoLang中国(访问) Gopher Academic( ...
- R语言排序函数汇总
总结: 1.sort是直接对向量排序,返回原数值: 2.order先对数值排序,然后返回排序后各数值的索引: 3.rank返回原数据各项排名,有并列的情况: 4.arrange是dplyr包中的,可对 ...
- 51CTO 资料汇总 截止20150504
================帖子列表,请大家选择自己喜欢的汇总贴分享================ 考试认证: 1.备战2014软考!精品视频教程推荐(综合复习+经验分享+考前冲刺)[随时更新] ...
- SQL闲杂知识点汇总【2015年12月】
2015.12.14 知识点1:DEFAULT VALUES实现插入行 --临时创建临时表 CREATE TABLE [dbo].[tblTmp] ( iTmpID ,) NOT NULL PRIMA ...
- R语言的导数计算(转)
转自:http://blog.fens.me/r-math-derivative/ 前言 高等数学是每个大学生都要学习的一门数学基础课,同时也可能是考完试后最容易忘记的一门知识.我在学习高数的时候绞尽 ...
随机推荐
- 浅淡Windows7 32位与64位/x86与x64的区别
看到有很多会员问到底是选Windows7 x86,还是选x64.这里简单的谈一下这这两种系统的区别. 简单的说x86代表32位操作系统 x64代表64位操作系统. 简单的判断电脑是否支持64位操作系 ...
- 关于WinForm引用WPF窗体
项目中有个界面展示用WPF实现起来比较简单,并且能提供更酷炫的效果,但是在WinForm中使用WPF窗体出现了问题,在网上找了一下有些人说Winform不能引用WPF的窗体,我就很纳闷,Win32都能 ...
- 简单3d RPG游戏 之 004 攻击(二)
人物和怪物的攻击都有CD冷却,在PlayerAttack脚本中添加成员 //冷却倒计时 public float attackTimer; //CD冷却时间 public float coolDown ...
- 简单3d RPG游戏 之 003 怪物AI
游戏中,怪物会自动的往玩家所在地点走去,那需要创建一个C#脚本EnemyAI,包含两个功能: 1. 怪物旋转自己对准玩家 2. 怪物向前移动,追逐玩家 public class EnemyAI : M ...
- xx创新论坛返工友情项目总结
友情项目,顾名思义就不是我做的,只是处于友情帮别人改改别人的代码帮别人找找bug...之所以要强调这一点是因为里面的低级问题太多,实在是不好意思承认自己和这个项目有关系.. 整个过程还是挺辛苦的,毕竟 ...
- ANN中Precision-Recall权衡
如果想要得到较高的精度,则需要较长的编码. 编码长度m增长的话,则item碰撞的概率会成倍的减小,从而导致召回率下降. 为了得到较高的召回率,则需要多个哈希表. 参考http://yongyuan.n ...
- 团体程序设计天梯赛-练习集L1-023. 输出GPLT
L1-023. 输出GPLT 时间限制 150 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 陈越 给定一个长度不超过10000的.仅由英文字母构成的 ...
- 建立Clojure开发环境-使用IDEA和Leiningen
OS: Mac OS X 10.10 IDEA 14.0.2 Community Edition 安装Leiningen 按照http://leiningen.org/的指南安装lein 阅读Lein ...
- javascript div z-index, input tabindex属性说明
<html> <body> <form> 用户名: <input type="text" tabindex="1" / ...
- 将ANGULAR与后端请求结合
简单的结合,却是很多应用的基础.RESTFUL就此而生.瘦服务,富客户. <!DOCTYPE html> <html lang="en" ng-app=" ...