R语言学习笔记

http://www.cnblogs.com/wentingtu/archive/2012/03/03/2377965.html

总结一下网上可以得到的R语言资源

http://www.douban.com/note/262946592/?type=like

R语言:机器学习程序包

http://blog.sciencenet.cn/blog-634847-497887.html

[转载]R基础:R语言及其学习资源

http://www.biosino.org/R/R-doc/onepage/R-data_cn.html#Importing-from-other-statistical-systems

R数据的导入和导出

http://www.biostatistic.net/thread-40320-1-1.html

read.dbf(foreign)

 

我们可以通过ls()看work space中有什么变量。

Help(functionname)   ?functionname  args(functionname)   example(functionname)

通过object.size()看每个变量占多大内存。

通过memory.size()查看现在的work space的内存使用

通过memory.limit()查看系统规定的内存使用上限。如果你认为现在的内存上限不够用,可以通过memory.limit(newLimit)更改到一个新的上限。

注意,在32位的R中,封顶上限为4G,你无法在一个程序上使用超过4G(数位上限)。这种时候,可以考虑使用64位的版本。对于一些很大的但无用的中间变量,养成清理的习惯:可以使用rm(object)删除变量,但是记住,rm后记得使用gc()做Garbage collection,否则内存是不会自动释放的,相当于你没做rm.

 

 

使用foreign包的read.dbf()读取上百兆的DBF文件不可以

 

http://blog.sina.com.cn/s/blog_62b37bfe0101f4h0.html

访问某列数据

对于移除某行数据,可以用subset()函数,也可以下标运算,对象可以是向量、矩阵和数据框。以矩阵为例,利用下标进行数据删除时,常常进行的是整行或者整列的删除,默认情况下按列删除。

   > x<-data.frame(matrix(1:30,nrow=5,byrow=T))

   >new.x1<-x[-c(1,4)]     #去除第一和第四列

   >new.x1<-x[-c(1,4),]    #去除第一和第四行

 new.x1<-x[,-c(1,4)]   # 去除第一和第四列

而利用subset()函数进行访问和选取数据框的数据更为灵活,subset函数将满足条件的向量、矩阵和数据框按子集的方式返回。

Subset函数的三种应用方式:

subset(x, subset, ...)                     

subset(x, subset, select, drop =FALSE, ...)    ##对于矩阵

subset(x, subset, select, drop =FALSE, ...)    ##对于数据框

x是对象,subset是保留元素或者行列的逻辑表达式,对于缺失值用NA代替。

Select 是选取的范围,应小于x
>x<-data.frame(matrix(1:30,nrow=5,byrow=T))

> rownames(x)=c("one","two","three","four","five")

>colnames(x)=c("a","b","c","d","e","f")

> x

>new<-subset(x,a>=14,select=a:f)

>new                            ## af列选取a>14的行。

 

 

http://my.oschina.net/zarger/blog/102818

访问数据某列

1.1 str函数可以查看数据框中每个变量的属性:

> str(Squid)

1.2函数中的数据参数--访问数据框中的变量的最佳方式

> M1 <- lm(GSI ~ factor(Location)+factor(Year),data = Squid)

1.3 $ 符号访问变量的另外一种方法

> Squid$GSI 或者 > Squid[,6]

1.4 attach 函数,将数据框添加到R的搜索路径中,此时就可以通过GSI命令直接查看GSI数据

>attach(Squid)
> GSI

 

筛选数据

data2 <-data[data$V6==2,]

y <- x[(x$Timeindex > 1000) & (x$Timeindex <5000), ]

 x3 <- x2[(x2$date< as.Date("2015/1/5")),]

x2 <- x1[order(x1[,3]),]

R进行数据筛选

http://blog.163.com/xiaoji0106@126/blog/static/136134661201392532614464/

据框列的引用: 
dn、d[,n]、d"name"、d[,"name"]、d$name 得到某一列组成的矢量
d[n]、d["name"]得到某一列组成的数据框。
d[c(m,n,...)]、d[,c(m,n,...)]、d[,c("name1","name2",...)]得到若干列组成的数据框

其它技巧:负号表示剔除。
可以用 grep() 搜索变量名。比如 mydata[grep("^q",names(mydata))] 选择名称以“q”开头的数据列。

数据框行的引用:

d[n,] 得到某一行组成的数据框。
d[c(m,n,...),n] 得到若干行组成的数据框。
head() 得到前6行组成的数据框。
tail() 得到最后6行组成的数据框。

 

http://www.cnblogs.com/youxilua/archive/2012/01/12/2320455.html   比较高级的

http://www.360doc.com/content/13/1221/22/7440765_339121786.shtml    低级到高级

http://blog.sina.com.cn/s/blog_5de124240101q5vw.html     R语言绘图渐进

http://blog.sina.com.cn/s/blog_6cfc336b01018wcg.html

http://www.cnblogs.com/holbrook/archive/2013/05/13/3075777.html

画图

输出数据

(1) R for Beginners(中文版).pdf

write.table(x1,file="E:\\Siemens\\TrafficData\\result().csv",append=FALSE,quote=FALSE,sep=",",eol="\n",na="NULL",dec=".",row.names=FALSE,col.names=TRUE)

(2)

cat()

http://blog.sina.com.cn/s/blog_5de124240101pwyv.html

Plot参数

http://blog.sina.com.cn/s/blog_6a02b6330101abn5.html

plot参数 一行多图

 

 par(mfrow=c(2,3))   一个图版显示2行,3列。Mfrow mfcol

http://www.biostatistic.net/thread-94936-1-1.html

R语言 图形交互操作   iplots 图形交互式包

 

http://www.cnblogs.com/speeding/p/4060500.html

# 日期要转换一下

fitbit$date <- as.Date(fitbit$date, "%Y%m%d")

strptime(“”, format)

typeof(Sys.Date())

 

http://www.biostatistic.net/thread-7035-1-1.html

R语言:as.POSIXlt()函数中文帮助文档(中英文对照)   日期时间转换功能

 

http://www.cnblogs.com/speeding/p/4159264.html

R语言环境中无法载入rJava包的解决办法

在R语言里运行下面的命令:

Sys.setenv(JAVA_HOME='C:/Program Files(x86)/Java/jdk1.7.0_55/jre')

Sys.setenv(JAVA_HOME='D:/ProgramFiles/Java/jdk1.7.0_40/jre')

或者添加在配置文件R\R-3.1.2\etc\Rprofile.site中

32bits的R必须是32bits的JAVA.

 

http://blog.fens.me/r-rjava-java/

http://www.haodaima.net/art/2522754

JAVA 调用 R语言

1. 安装rJava - install.packages(“rJava”) - /rJava/jri/下会有3JRI文件。

2. 系统环境变量设置:path添加

\library\rJava\jri

R\win-library\3.1\rJava\jri\x64

…\R\R-3.1.2\bin\x64

3. Java项目中导入3JRI文件。

4. Eclipse运行设置添加 VM arguments: -Djava.library.path="C:\Users\zhangjiajie\Documents\R\win-library\3.1\rJava\jri\x64"

 

rJava Tomcat 配置

1) 三个jar包放在lib目录下;

2) \rJava\jri\i386\jri.dll 放在 \Tomcat8.0\bin\目录下;

 

 

拟合

线性回归

m <- lm(y~x1+x2+x3,data=dataframe)   // m保存了回归模型

anova(m)                               //方差分析表

coef(m)                                 //模型系数

confint(m)                              //回归系数的置信区间

deviance(m)                           //残差平方和

effects(m)                               //正交影响向量

fitted(m)                                //拟合y值的向量

residuals(m)                           //模型残差

resid(m)                                 //模型残差

Summary(m)                          //R2F统计量

vcov(m)                                 //协方差矩阵

 

有交互项的线性回归

Lm(y~x1*x2) ->  y = a*x1+b*x2+c*x1*x2+d

Lm(y~x1*x2*x3) -> 

y =a*x1+b*x2+c*x3+d*x1*x2+e*x1*x2+f*x2*x3+g*x1*x2*x3+h

Lm(y~x1+x2+x3+x1:x2:x3)  -> 

y = a*x1+b*x2+c*x3+d*x1*x2*x3+e

 

setp逐步回归,可以向后回归移除无意义的变量,可以向前回归添加新的变量

Lm(y~x1, subset=1:100) 只选择前100条数据用于回归

Lm(y~I(x1+x2)) (x1+x2)回归

Lm(y~ploy(x,3,raw=TRUE))  yx的三次方多项式回归

Lm( log(y) ~ x1 )

 

System.time(r_expression) // R运行时间

 

计算相关系数

http://www.biostatistic.net/thread-7287-1-1.htmlby

by(data, INDICES, FUN, ..., simplify = TRUE)

http://www.biostatistic.net/thread-7388-1-1.htmlcor

cor(data)

by(data, data$x, cor)

 

http://www.klshu.com/tag/r%E8%AF%AD%E8%A8%80/page/2

快乐树R语言

http://www.klshu.com/1798.html

http://www.klshu.com/1077.html

使用R完成决策树分类

http://www.klshu.com/1555.html

ggplot

http://www.klshu.com/1591.html

plotggplot2画图比较

http://www.klshu.com/1667.html

svm 模式识别,分类,回归分析

http://www.klshu.com/1430.html

apply函数家族

http://www.klshu.com/1202.html

http://www.klshu.com/1175.html

http://www.klshu.com/1188.html

http://www.klshu.com/1107.html

关联规则

http://www.klshu.com/1185.html

常用函数

http://www.klshu.com/1144.html

http://www.klshu.com/1147.html

R语言用Shiny包快速搭建交互网页应用

http://www.klshu.com/1073.html

数据挖掘函数集

http://www.klshu.com/1071.html

K-Means聚类数的查找

http://www.klshu.com/238.html

http://www.klshu.com/693.html

http://www.klshu.com/719.html

http://www.klshu.com/107.html基本

画图

http://www.klshu.com/25.html

三维画图

http://www.klshu.com/21.html

R代码规范

http://www.mamicode.com/info-detail-374357.html

R语言与数据分析之六:时间序列简单介绍

 

http://www.empowerstats.com/cn/download.html

下载易侕统计

http://yanping.me/shiny-tutorial/

中文教程:用R构建Shiny应用程序

http://book.51cto.com/art/201408/449427.htm

Xts

http://blog.csdn.net/desilting/article/details/39013825

ARIMA(p,d,q)模型, acf ,pacf

http://www.biostatistic.net/thread-6683-1-1.html

AIC信息准则

BIC信息准则

http://www.biostatistic.net/thread-40266-1-1.html

forecast包。 auto.arima():返回最佳ARIMA模型根据AIC,AICC或BIC值

 

diff(x,lag=n) #滞后差分,lag用以指定滞后几项。默认的lag值为1。

x<-c(1,5,23,29)

diff(x, lag=n) === c( x[1+n]-x[1], x[2+n]-x[2], x[3+n]-x[3] ,... )

 

http://blog.163.com/zzz216@yeah/blog/static/16255468420147179438149/

Dplyr 数据处理包

http://ju.outofmemory.cn/entry/84555

用lubridate包来处理时间数据

 

回归

http://www.cnblogs.com/luosha/archive/2012/06/30/2571542.html

线性回归 lm 及预测

http://www.douban.com/note/298285612/

lm 结果分析

http://www.biostatistic.net/thread-7433-1-1.html

线性回归 lm

summary查看了lm返回的结果。

Residuals:中,我们可以看到的是一些关于残差的信息:最小最大值,4分位数等。Coefficients:中则是最为关键的对cb的相关估计。其中Estimate是与b,c值的估计,Std. Error 则是回归参数bc的标准差:sd(b), sd(c)。剩下的两个参数则是对回归参数的假设检验: t value是对b,c进行假设检验的t值,以及P-(用来与显著性水平比较决定是否接受该阿假设检验)Pr(>|t|)

最后我们还可以看到3* 号,这表明xy有非常显著的线性关系(*可以有03个,越多则线性关系越显著)

 

lm.reg <- lm(final.data$flow ~final.data$minute);

summary(lm.reg);

# 画线 2种方法

lines(final.data$minute, fitted(lm.reg),col=5);

abline(lm.reg, col=5);

 

# 残差分析

 lm.res<- residuals(lm.reg);

 plot(lm.res);

输出诊断信息

par(mfrow=c(2,2));

plot(lm.reg);

 

 

http://www.dataguru.cn/article-5270-1.html

nls 分段函数,指数函数

 

预测

summary(auto.arima(z)) 结果分析

模型估计为ARIMA(4,0,2),ARMA(4,2)
系数为:
               ar1 ar2 ar3 ar4 ma1 ma2
               -0.5505 0.2316 0.0880-0.4325 -0.1944 -0.5977
s.e.         0.1657 0.1428 0.1402 0.12700.1766 0.1732
s.e.
是系数的标准差,系数显著性要自己算,|系数/se| > 1.96 95%的置信度
sigma^2 estimated
估计值方差
log likelihood
对数似然值
AIC=709.13 AICc=710.73 BIC=725.63
再就是下面一堆误差计算
ME\x05Mean Error
RMSE\x05Root Mean Squared Error
MAE\x05Mean Absolute Error
MPE\x05Mean Percentage Error
MAPE\x05Mean Absolute Percentage
MASE\x05Mean Absolute Scaled Error

 

http://www.biostatistic.net/thread-90363-1-1.html

Eacf() 计算样本扩展ACF(ESACF)

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值