R基础

yj<-function(){
     tryCatch({
         aaa #这个变量不存在,所以报错。
         print(0) # 上面一行报错了,这一行就不会执行,而是执行函数error()。
       }, 
       warning = function(w){
           }, 
       error = function(e){
             print('error')
             return("这个return返回的是函数error()的值,并结束函数error(),而不是外面的函数yj()")#
             print("e") #由于上面有return,这个语句不会执行。
             })      
     }
 a = yj()

构建一个值为1并且重复10次的向量

> rep(1, 10)
 [1] 1 1 1 1 1 1 1 1 1 1

R基础

### 简单移动平均
使用k个观测值的平均值来代替该值。可以使用forecast中的ma()函数。

使用Nile数据集,表示尼罗河年度流量。

library(forecast)
ylim = c(min(Nile), max(Nile))
plot(ma(Nile, 3), main="k=3", ylim=ylim)
plot(ma(Nile, 6), main="k=6", ylim=ylim)

### 季节性时间序列
一个季节性时间序列中会包含三部分,趋势部分、季节性部分和无规则部分。分解时间序列就是要把时间序列分解成这三部分,然后进行估计。
对于可以使用相加模型进行描述的时间序列中的趋势部分和季节性部分,我们可以使用 R中的“decompose()” 函数来估计。这个函数可以估计出时间序列中趋势的、季节性的和不规则的部分,而此时间序列须是可以用相加模型描述的。
decompose()函数
[R学习日记——分解时间序列(季节性数据)](http://blog.sina.com.cn/s/blog_70f632090101b78k.html)

## do.call()
do.call() 列表中的所有元素,都作为入参传入到函数中,返回相应的结果。

do.call(fun, list)


### dataframe
查看数据框中的字段类型:str(df)

### 读取excel

library(openxlsx)

openxlsx 不能读取 .xls 或 .xlm 文件

data = read.xlsx(excel路径, sheet = 表名或数字序号)

# 常用的一些简单函数
dim()
str() 查看df的结构,包括字段名、类型等,也可以查看函数等对象的参数。
View(df)
within()
subset()
# R 内存管理
memory.limit() #查看内存上限
memory.size(T) #查看已分配内存
memory.szie(F) #查看已使用内存
ls() #查看当前所有对象
object.size(对象名) #查看指定对象占用内存大小
rm(object),rm(list=ls()) 和 gc():rm()是清空变量,但不一定清空缓存,还要用gc()清理缓存。

dim(iris)
[1] 150 5
str(iris)
'data.frame': 150 obs. of 5 variables:
$ Sepal.Length: num 5.1 4.9 4.7 4.6 5 5.4 4.6 5 4.4 4.9 ...
$ Sepal.Width : num 3.5 3 3.2 3.1 3.6 3.9 3.4 3.4 2.9 3.1 ...
$ Petal.Length: num 1.4 1.4 1.3 1.5 1.4 1.7 1.4 1.5 1.4 1.5 ...
$ Petal.Width : num 0.2 0.2 0.2 0.2 0.2 0.4 0.3 0.2 0.2 0.1 ...
$ Species : Factor w/ 3 levels "setosa","versicolor",..: 1 1 1 1 1 1 1 1 1 1 ...
str(substr)
function (x, start, stop)
str(str)
function (object, ...)

posted @ 2018-10-31 12:51  YangCool  阅读(188)  评论(0编辑  收藏  举报