您的位置:首页 > 其它

R语言学习笔记 三

2016-01-20 14:16 513 查看
八、对象集的属性
1)对象集的固有属性有Mode和length
> x
[1] 11 22 3388
> mode(x)
[1] "numeric"
Mode有: numeric1, complex, logical, character and raw.numeric1, complex, logical, character 和 raw.
> length(x)
[1] 3
> c(1.0-5i,20+51i)->a
> mode(a)
[1] "complex"
R可以满足大部分的适合的合理的模式变化需求,并提供了一些相应的函数
> h<- 5:12
> h
[1] 5 6 7 8 9 10 11 12
> as.character(h)
[1] "5" "6" "7" "8" "9" "10" "11" "12"
> c(1.0-5i,20+51i)->a
> mode(a)
[1] "complex"
> as.character(a)->c_a
> c_a
[1] "1-5i" "20+51i"
2)设置对象属性
attr(object, name) 函数设置对象属性
比如设置对象维数
> h
[1] 5 6 7 8 9 10 11 12
> h[2*2:4]
[1] 8 10 12
> h[4:7]
[1] 8 9 10 11
> h
[1] 5 6 7 8 9 10 11 12
> attributes(h)
$dim
[1] 2 4
也可以自定义属性
> attr(h,"name")
[1] "test"
> attr(h,"name")
[1] "test"
> h
[,1] [,2] [,3] [,4]
[1,] 5 7 9 11
[2,] 6 8 10 12
attr(,"name")
[1] "test"
Factor(因子,因素)可用来生成向量的离散的分类向量
> my_num<-c(11,22,34,71,14,68,21)
> factor(my_num)->nums
> nums
[1] 11 22 34 71 14 68 21
Levels: 11 14 21 22 34 68 71
> my_num<-c(11,22,34,71,14,68,21,22,11,34)
> factor(my_num)->nums
> nums
[1] 11 22 34 71 14 68 21 22 11 34
Levels: 11 14 21 22 34 68 71
Levels表示因子 向量中的水平(去除重复元素后共有哪些元素)
> levels(nums)
[1] "11" "14" "21" "22" "34" "68" "71"
有序因子
> ordered(nums)
[1] 11 22 34 71 14 68 21 22 11 34
Levels: 11 < 14 < 21 < 22 < 34 < 68 < 71
函数tapply进行分类(组)统计
对每个分组应用函数
> fruit_class<-c("苹果","梨子","桔子","草梅","苹果","桔子","桔子","草梅","桔子","草梅")
> fruit_prices<-c(3.5,2.5,1.5,5.5,4.2,3.2,2.8,4.8,2.9,5.8)
求平均价格
> tapply(fruit_prices,fruit_class,mean)
草梅 桔子 梨子 苹果
5.366667 2.600000 2.500000 3.850000
求最低价格
> tapply(fruit_prices,fruit_class,min)
草梅 桔子 梨子 苹果
4.8 1.5 2.5 3.5
求最高价格
> tapply(fruit_prices,fruit_class,max)
草梅 桔子 梨子 苹果
5.8 3.2 2.5 4.2
方差
草梅 桔子 梨子 苹果
0.2633333 0.5666667 NA 0.2450000
求标准差
> tapply(fruit_prices,fruit_class,sd)
草梅 桔子 梨子 苹果
0.5131601 0.7527727 NA 0.4949747
求标准误,标准误即样本均数的标准差,是描述均数抽样分布的离散程度及衡量均数抽样误差大小的尺度,反映的是样本均数之间的变异。标准误不是标准差,是样本均值的标准差,用来衡量抽样误差。
标准误越小,表明样本统计量与总体参数的值越接近,样本对总体越有代表性,用样本统计量推断总体参数的可靠度越大,即使从同一总体用同样方法随机抽取例数相同的一些样本,各样本算得的某种指标,也参差不齐存在一定的差异,样本指标与相应的总体指标之间有或多或少的相差,这种差异,即由于抽样而带来的样本与总体间的误差,叫抽样误差。



S为样本标准差
> stderr <- function(x) sqrt(var(x)/length(x))
> tapply(fruit_prices,fruit_class,stderr)
草梅 桔子 梨子 苹果
0.2962731 0.3763863 NA 0.3500000
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  R