美文网首页生信猿
【R编程-2】数据类型

【R编程-2】数据类型

作者: oddxix | 来源:发表于2018-12-05 17:38 被阅读3次

    变量分配R-对象和R对象的数据类型变为变量的数据类型。有许多类型的R-对象。常用的有:

    • 矢量
    • 列表
    • 矩阵
    • 数组
    • 因子
    • 数据帧

    这些对象的是最简单的矢量对象并且这些原子矢量有六种数据类型,也被称为六类向量。另外R-对象是建立在原子向量。


    因此,在R语言中的非常基本的数据类型是R-对象,如上图所示占据着不同类别的元素向量。请注意R语言中类的数量并不只限于上述的六种类型。 例如,我们可以使用许多原子向量以及创建一个数组,它的类将成为数组。

    向量

    当您希望使用多个元素创建向量,应该使用c()函数,这意味着元素结合成一个向量。

    # Create a vector.
    apple <- c('red','green',"yellow")
    print(apple)
    
    # Get the class of the vector.
    print(class(apple))
    

    当我们上面的代码执行时,它产生以下结果:

    [1] "red" "green" "yellow"
    [1] "character"

    列表

    列表是R-对象,它里面可以包含多个不同类型的元素,如向量,函数,甚至是另一个列表。

    # Create a list.
    list1 <- list(c(2,5,3),21.3,sin)
    
    # Print the list.
    print(list1)
    

    当我们上面的代码执行时,它产生以下结果:

    [[1]]
    [1] 2 5 3

    [[2]]
    [1] 21.3

    [[3]]
    function (x) .Primitive("sin")

    矩阵

    矩阵是一个二维矩形数据集。它可以使用一个向量输入到矩阵函数来创建。

    # Create a matrix.
    M = matrix( c('a','a','b','c','b','a'), nrow=2,ncol=3,byrow = TRUE)
    print(M)
    

    当我们上面的代码执行时,它产生以下结果:

    [,1] [,2] [,3]
    [1,] "a" "a" "b"
    [2,] "c" "b" "a"

    数组

    尽管矩阵限于两个维度,数组可以是任何数目的尺寸大小。数组函数使用它创建维度的所需数量的属性-dim。在下面的例子中,我们创建了两个元素数组,这是3×3矩阵。

    # Create an array.
    a <- array(c('green','yellow'),dim=c(3,3,2))
    print(a)
    

    当我们上面的代码执行时,它产生以下结果:

    , , 1
    

    [,1] [,2] [,3]
    [1,] "green" "yellow" "green"
    [2,] "yellow" "green" "yellow"
    [3,] "green" "yellow" "green"

    , , 2
    

    [,1] [,2] [,3]
    [1,] "yellow" "green" "yellow"
    [2,] "green" "yellow" "green"
    [3,] "yellow" "green" "yellow"

    因子

    因子是使用向量创建的R对象。它存储随同该向量作为标记元素的不同值的向量。 标签始终是字符,而不论它在输入向量的是数字或字符或布尔等。它们在统计建模有用。

    运用 factor() 函数创建因子。nlevels 函数给出级别的计数。

    # Create a vector.
    apple_colors <- c('green','green','yellow','red','red','red','green')
    
    # Create a factor object.
    factor_apple <- factor(apple_colors)
    
    # Print the factor.
    print(factor_apple)
    print(nlevels(factor_apple))
    

    当我们上面的代码执行时,它产生以下结果:

    [1] green green yellow red red red yellow green
    Levels: green red yellow

    applying the nlevels function we can know the number of distinct values

    [1] 3

    数据帧

    数据帧是表格数据对象。不像在数据帧的矩阵,每一列可以包含不同的数据的模型。第一列可以是数字,而第二列可能是字符和第三列可以是逻辑。它与向量列表的长度相等。

    数据帧所使用 data.frame()函数来创建。

    # Create the data frame.
    BMI <-  data.frame(
                gender = c("Male", "Male","Female"), 
                height = c(152, 171.5, 165), 
                weight = c(81,93, 78),
                Age =c(42,38,26)
                )
    print(BMI)
    

    当我们上面的代码执行时,它产生以下结果:

    gender height weight Age
    1 Male 152.0 81 42
    2 Male 171.5 93 38
    3 Female 165.0 78 26

    相关文章

      网友评论

        本文标题:【R编程-2】数据类型

        本文链接:https://www.haomeiwen.com/subject/oppwcqtx.html