zoukankan      html  css  js  c++  java
  • R的数据结构

    R语言中的数据结构包括标量、向量、矩阵、数组、列表以及数据框

    目录

    1 向量

    向量是用于存储单一数据类型(数值、字符、逻辑值)的一维数组,示例如下:
    a <- c(1,2,3,4,5) #数值
    mode(a)
    
    b <- c('a','b','c','d') #字符
    mode(b)
    
    c <- c(T,F,F,T) #逻辑
    mode(c)
    
    

    值得注意的是R的标量是向量的特例,是单一的元素的向量:

    a <- 1
    b <- 'c'
    c <- T
    
    

    虽然向量必须具有单一的数据类型,但是也存在着如下的情况:

    a <- c('a',2,3) #数值转换为字符
    mode(a)
    
    b <- c(1,T,1,0) #TRUE转换为1,FALSE转换为0
    mode(b)
    
    

    R中内置了seq函数以快速生成有序的向量:

    seq(from = 1,to = 50,by = 10) #缩写:seq(1,50,10)
    seq(length = 10,from = 1,to = 40)
    
    

    内置了rep函数以快速生成循环向量:

    rep(1,10)
    rep(c(1,5,6),3)
    rep(1:4,each = 3)
    
    

    内置了字母序列letters:

    letters[2:15]
    
    

    对于已经创建的向量,该如何操作向量?下面将演示几个比较常见的向量操作示例:

    a <- c(1,4,6,8,2,3,5,6)
    
    # 1.给向量命名
    names(a) <- c('x1','x2','x3','x4','x5','x6','x7','x8')
    
    # 2.提取数值4
    a[2] #向量的元素下标取值是以1开始
    a[[2]] #不含元素名
    a[-2] #提取除了元素位置2的所有元素
    
    # 3.提取数值4&8
    a[c(2,4)] #提取多个元素使用元素下标向量
    
    # 4.提取前4个元素
    a[1:4] #提取连续的位置的元素
    
    # 5.提取数值大于4的元素
    a[a>4] #a>4:逻辑向量
    
    # 6.向量的添加
    b <- c(a,x9 = 5) #x9为元素名
    b <- append(b,0,after = 4) #after确定添加在元素位置4后
    names(b) <- c('x1','x2','x3','x4','x5','x6','x7','x8','x9','x10')
    c <- c(a,b) #合并向量
    
    # 7.向量排序
    order(a) #输出排序后的各个向量位置
    sort(a) #输出排序后的结果,等价于:a[order(a)]
    
    # 8.which函数:返回元素坐标
    which(a==4)
    which(a>5) #等价于:a>5
    which.max(a)
    which.min(a)
    
    

    最后将演示下R中的向量比较与运算,示例如下:

    # 1.向量的比较
    a <- runif(5,1,20)
    b <- rnorm(5)
    a>b #元素逐一比较
    identical(a,b) #向量整体比较
    all.equal(a,b)
    
    a <- 1:3
    b <- 1:5
    a>b #长度不一致无法比较
    
    # 2.向量的运算
    a <- runif(5,1,20)
    b <- rnorm(5)
    a+b
    
    a <- 1:3
    b <- 1:5
    a-b #长度不一致,a循环补充
    
    
  • 相关阅读:
    手机号 验证(正则)
    静态库相关
    添加友盟SDK,实现新浪分享和微信朋友圈分享的关键代码
    删除Mac 系统中多出得MobileBackups 文件夹
    浏览器判断检测手机中是否安装了ios/android客户端程序
    浏览器判断是否安装了ios/android客户端程序
    自定义TextField的删除按钮
    应用崩溃日志解析
    关于UITextView的一些问题
    关于UIColor这个类的一些不知道的事
  • 原文地址:https://www.cnblogs.com/YukBrandes/p/5425044.html
Copyright © 2011-2022 走看看