目录

  


数据类型

数据结构

  •  向量

    • 用于存储数值型、字符型或逻辑型数据的一维数组
    • 单个向量中数据必须拥有相同的类型或者模式(数值型、字符型或逻辑型)
    • 创建向量
    • # c()创建向量
      x <- c(10,11,13,14)
      
      # : 创建向量
      x <- 1:10
      
      # seq(from, to, by, length.out, along.with)
      # seq(from, to, by, length, along)
      # 从5开始,间隔为2,长度为8
      x <- seq(5, by=2, length=8)
      
      # 从10开始,间隔为3,长度与x相同(8)
      y <- seq(10, by=3, along= x)
    • 提取子集
      > a <- c(1,2,5,3,6,-2,4)
      [1]  1  2  5  3  6 -2  4
      
      > a[3]
      [1] 5
      
      > a[c(1,3,5)]
      [1] 1 5 6
      
      > a[2:6]
      [1]  2  5  3  6 -2
  • 矩阵

    • 二维数组,每个元素都拥有相同的模式(数值型、字符型或逻辑型)
    • 创建矩阵matrix
      • mymatrix <- matrix(vector,  nrow=num,  ncol=num,  byrow=TRUE/FALSE,  dimnames=list(rnames,cnames))
    • # 创建一个5X4的矩阵
      > y <- matrix(1:20, nrow=5, ncol=4)
      > y
           [,1] [,2] [,3] [,4]
      [1,]    1    6   11   16
      [2,]    2    7   12   17
      [3,]    3    8   13   18
      [4,]    4    9   14   19
      [5,]    5   10   15   20
      
      > cells <- c(1,26,24,68)
      > rnames <- c("R1","R2")
      > cnames <- c("C1","C2")
      
      # 按行填充的2X2矩阵
      > mymatrix <- matrix(cells, nrow=2, ncol=2, byrow=TRUE, dimnames=list(rnames,cnames))
      > mymatrix
         C1 C2
      R1  1 26
      R2 24 68
      
      # 按列填充的2X2矩阵
      > mymatrix <- matrix(cells, nrow=2, ncol=2, byrow=FALSE, dimnames=list(rnames,cnames))
      > mymatrix
         C1 C2
      R1  1 24
      R2 26 68
    • 提取子集
      > x <- matrix(1:10, nrow=2)
      > x
           [,1] [,2] [,3] [,4] [,5]
      [1,]    1    3    5    7    9
      [2,]    2    4    6    8   10
      
      # 0是indexs和columns
      > x[0,]
           [,1] [,2] [,3] [,4] [,5]
      > x[,0]
      
      [1,]
      [2,]
      
      # 所以提取值的序列是1开始
      > x[2,]
      [1]  2  4  6  8 10
      > x[,2]
      [1] 3 4
      
      > x[1,c(2,3)]
      [1] 3 5 
  • 数组
    • 数组与矩阵类似,但维度可以大于2(同样:每个元素都拥有相同的模式)
  • 创建数据:myarray <- array(vector,  dimensions,  dimnames)
      • vector:数组中的数据(相同模式)
      • dimensions:一个数值型向量,给出各个维度下标的最大值
      • dimnames:可选,各维度名称标签的列表
    • > dim1 <- c("A1","A2","A3","A4")
      > dim2 <- c("B1","B2","B3")
      > dim3 <- c("C1","C2")
      #创建三维数组
      > z <- array(1:24, c(4,3,2), dimnames=list(dim1,dim2,dim3))
      > z
      , , C1
      
         B1 B2 B3
      A1  1  5  9
      A2  2  6 10
      A3  3  7 11
      A4  4  8 12
      
      , , C2
      
         B1 B2 B3
      A1 13 17 21
      A2 14 18 22
      A3 15 19 23
      A4 16 20 24
    • 提取子集:与矩阵相同
  • 数据框

    • 包含不同模式(数值型、字符型等)的数据,最常规(有用)的表格
    • 创建数据框:mydata <- data.frame(col1,col2,col3,...)
      > patientID <- c(1,2,3,4)
      > age <- c(25,34,28,52)
      > diabetes <- c("Type1","Type2","Type3","Type4")
      > status <- c("Poor","Improved","Excellent","Poor")
      
      > patientdata <- data.frame(patientID, age, diabetes, status)
      > patientdata
        patientID age diabetes    status
      1         1  25    Type1      Poor
      2         2  34    Type2  Improved
      3         3  28    Type3 Excellent
      4         4  52    Type4      Poor
    • 提取子集
  • 列表

  • 因子

R-数据结构的更多相关文章

  1. R: 数据结构、数据类型的描述。

    ################################################### 问题:数据结构..类型  18.4.27 有哪些数据结构.类型??  各自有什么特点? 解决方案 ...

  2. 机器学习与R语言

    此书网上有英文电子版:Machine Learning with R - Second Edition [eBook].pdf(附带源码) 评价本书:入门级的好书,介绍了多种机器学习方法,全部用R相关 ...

  3. 机器学习 1、R语言

    R语言 R是用于统计分析.绘图的语言和操作环境.R是属于GNU系统的一个自由.免费.源代码开放的软件,它是一个用于统计计算和统计制图的优秀工具. 特点介绍 •主要用于统计分析.绘图.数据挖掘 •R内置 ...

  4. 《R实战》读书笔记三

    第二章  创建数据集 本章概要 1探索R数据结构 2使用数据编辑器 3数据导入 4数据集标注 本章所介绍内容概括例如以下. 两个方面的内容. 方面一:R数据结构 方面二:进入数据或者导入数据到数据结构 ...

  5. 新工具︱微软Microsoft Visual Studio的R语言模块下载试用Ing...(尝鲜)

    笔者:前几天看到了以下的图片,着实一惊.作为R语言入门小菜鸟,还是觉得很好看,于是花了一点时间下载下来试用了一下,觉得还是挺高大上的. 就是英文不好是硬伤.下面贴给小白,我当时的下载步骤与遇见的问题. ...

  6. 让R与Python共舞

    转载:http://ices01.sinaapp.com/?p=129      R(又称R语言)是一款开源的跨平台的数值统计和数值图形化展现 工具.通俗点说,R是用来做统计和画图的.R拥有自己的脚本 ...

  7. Linux下源码编译安装rpy2

    R(又称R语言)是一款开源的跨平台的数值统计和数值图形化展现工具.rpy2是Python直接调用R的第三方库,它可以实现使用python读取R的对象.调用R的方法以及Python与R数据结构转换等.这 ...

  8. web server性能优化浅谈

    作者:ZhiYan,Jack47 转载请保留作者和原文出处 Update: 2018.8.8 在无锁小节增加了一些内容 性能优化,优化的东西一定得在主路径上,结合测量的结果去优化.不然即使性能再好,逻 ...

  9. iOS开发--知识点总结

    1 .全局变量,变量名前加下划线.和系统一致. 2 . nil指针为空   @“”字符串为空 (内容为空)       ==  判断内存地址   基本变量    对于一些基本类型 可以使用==来判断, ...

  10. 使用 Rcpp

    正如我们所提到的那样,并行计算只有在每次迭代都是独立的情况下才可行,这样最终结果才不会依赖运行顺序.然而,并非所有任务都像这样理想.因此,并行计算可能会受到影响.那么怎样才能使算法快速运行,并且可以轻 ...

随机推荐

  1. Jenkins邮件配置,实现邮件发送策略(可实现每个Job对应不同的发送邮箱)

    前言: 首先,要有一个用来发送的邮箱,首选网易!参考:http://www.cnblogs.com/EasonJim/p/6051636.html,这里我注册了网易的免费企业邮箱. 并且我新建没多个邮 ...

  2. PHP的几个常用加密函数

    在php的开发过程中,常常需要对部分数据(如用户密码)进行加密 一.加密类型: 1.单向散列加密 就是把任意长度的信息进行散列计算,得到固定长度的输出,这个散列计算过程是单向的,即不能对固定长度的输出 ...

  3. dedeCMS /plus/ad_js.php、/plus/mytag_js.php Vul Via Injecting PHP Code By /plus/download.php Into DB && /include/dedesql.class.php

    目录 . 漏洞描述 . 漏洞触发条件 . 漏洞影响范围 . 漏洞代码分析 . 防御方法 . 攻防思考 1. 漏洞描述 对于这个漏洞,我们可以简单概括如下 . "/plus/download. ...

  4. PHP设计模式(三)

    注册器模式 这种模式比较简单好理解,在PHP框架中会经常用到,在某些比较大的PHP框架中,会在初始化时将一些常用的类实例放在注册器中,实际是存在注册器类中的一个静态数组中,以后想去用它的话,直接根据名 ...

  5. AngularJs angular.bind、angular.bootstrap、angular.copy

    angular.bind 返回一个调用self的函数fn(self代表fn里的this).可以给fn提供参数args(*).这个功能也被称为局部操作,以区别功能. 格式:angular.bind(se ...

  6. Mac & XCode 使用技巧总结

    Mac OS 是基于UNIX 的操作系统. 一 基本技巧 1. 允许安装任何来源的APP 系统偏好设置 -> 安全性和隐私 -> 通用 选择”允许从以下位置下载的应用程序“ 中的 “任何来 ...

  7. HDU 4280Island Transport(Dinc非STL 模板)

    题意: n岛m条路,然后是 n个岛的坐标,然后是m条双向路,包括 岛和 岛 之间 最大客流量,让求 最左边的岛 到右边的岛 最大客流量 分析: 建图 以 左边的岛为原点,最右边的为终点求最大客流量. ...

  8. 快捷键&小技巧&备忘录

    shift+鼠标滚轮:实现左右移动 alt+鼠标左键双击:打开属性 chrome中在F12下的Element中,可以先选中某一项,可以直接按住F2进行编辑 chrome中element的右下方我们可以 ...

  9. const 和 readonly 修饰符的用法

    1. 只有C#内置类型(int,double,long等)可以声明为const;结果.类和数组不能声明为const. 2. readonly 是在字段上使用的修饰符,直接以类名.字段访问. 3. co ...

  10. mysql修改引擎

    1 查看系统支持的存储引擎 show engines; 2 查看表使用的存储引擎 两种方法: a.show table status from db_name where name='table_na ...