R语言学习笔记 三

八、对象集的属性

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)