zoukankan      html  css  js  c++  java
  • 第二章 R语言数据结构

    R语言存储数据的结构包括:标量、向量、矩阵、数组、数据框和列表;可以处理的数据类型包括:数值型、字符型、逻辑型、复数型和原生型。

    数据结构

    向量

    向量是用来存储数值型、字符型或逻辑型数据的一维数组。单个向量中的数据类型必须一致。

    a <- c(1,2,3,4,5,6)
    b <- c("one","two","three")
    c <- c(TRUE,TRUE,FALSE)
    
    矩阵

    矩阵是一个二维数组,每个元素的数据类型一致。

    > y <- matrix(1:20,nrow = 4,ncol = 5);
    > y
         [,1] [,2] [,3] [,4] [,5]
    [1,]    1    5    9   13   17
    [2,]    2    6   10   14   18
    [3,]    3    7   11   15   19
    [4,]    4    8   12   16   20
    
    数组

    数组与矩阵类似,但是维度可以大于2。像矩阵一样,数组中的元素类型也必须一致。

    > dim1 <- c("A1","A2");
    > dim2 <- c("B1","B2","B3");
    > dim3 <- c("C1","C2","C3","C4");
    > z <- array(1:24,c(2,3,4),dimnames = list(dim1,dim2,dim3));
    > z
    , , C1
    
       B1 B2 B3
    A1  1  3  5
    A2  2  4  6
    
    , , C2
    
       B1 B2 B3
    A1  7  9 11
    A2  8 10 12
    
    , , C3
    
       B1 B2 B3
    A1 13 15 17
    A2 14 16 18
    
    , , C4
    
       B1 B2 B3
    A1 19 21 23
    A2 20 22 24
    
    数据框

    数据框不同的列可以包含不同类型的数据,相对于数组,数据框更加灵活。

    > partionId <- c(1,2,3,4);
    > age <- c(22,33,45,67);
    > diabetes <- c("Type1","Type2","Type1","Type1");
    > status <- c("Poor","Good","Excellent","Perfect");
    > partionData <- data.frame(partionId,age,diabetes,status);
    > partionData
      partionId age diabetes    status
    1         1  22    Type1      Poor
    2         2  33    Type2      Good
    3         3  45    Type1 Excellent
    4         4  67    Type1   Perfect
    
    列表

    列表是R语言中数据类型最复杂的一种。

    > g <- "My First Class!";
    > h <- c(1,2,3,4,5,6);
    > j <- matrix(1:10,nrow = 10);
    > k <- c("one","two","three");
    > mylist <- list(title=g,ages=h,j,k);
    > mylist
    $title
    [1] "My First Class!"
    
    $ages
    [1] 1 2 3 4 5 6
    
    [[3]]
          [,1]
     [1,]    1
     [2,]    2
     [3,]    3
     [4,]    4
     [5,]    5
     [6,]    6
     [7,]    7
     [8,]    8
     [9,]    9
    [10,]   10
    
    [[4]]
    [1] "one"   "two"   "three"
    
  • 相关阅读:
    Python小工具:统计代码行数
    计算机图形学复习(一)
    牛客多校训练第一场 J.Different Integers
    数据校验码概述
    数据库复习第二章
    数据库复习第一章
    自动化AC器(带界面版)
    ZOJ 3747 Attack on Titans
    Codeforces Round #245 (Div. 1) B. Working out
    HDU 6266 Hakase and Nano 【博弈论】
  • 原文地址:https://www.cnblogs.com/taro/p/6571742.html
Copyright © 2011-2022 走看看