在这一章,包含的内容有:

  1. R 的数据类型
  2. 属性
  3. 类(特殊的属性)
  4. Ruby 的数据结构

R 数据类型

R 可以识别六种类型的数据类型,分别是:

  1. double
  2. integer
  3. character
  4. logical
  5. complex(负数)
  6. raw(机器代码)

integer 整型

格式: 在数字后加“L”,比如:-1L, 2L, 4L..

complex 复数

格式:将某个数字与复数相加,比如: 1 + 1i, 1+2i ...

raw 数据的原始子节

格式: raw(n)
功能:生成长度为 n 的空原始类型向量

R 属性

定义: 对象的 metadata, 将与这个对象相关的信息以一种便捷的形式存起来并且附加给该对象.
一个原子型向量具有三种属性:

  1. 名称: name
  2. 维度: dim
  3. 类: class

name 属性

定义:给向量中的每一个值对应的名称
语法:辅助函数 names
例如:names(die) <- ("one", "two", "three", "four", "five", "six")

dim 属性

定义:

将向量变为一个 n 维数组.

语法:

方式一:

将 die 向量变为一个 3 为数组,规模为 1x 2 x 3
dim(die) <- c(1,2,3)

方式二:

die <- martrix(die, nrow = 2)

方式三:

和方式一效果类似
die <- array(die, dim = c(1,2,3))
注意:
默认状态下按列进行排列,若要按行排列,则添加 byrow = TRUE 参数.

class 属性 & factor 类

class 属性:
定义:表示整个数据的类型,比如用于表示日期和时间,矩阵等等.
factor 因子:
定义: 一种特殊的 class

  1. 向 factor 函数传递一个向量,生成因子
  2. 因子为一个整形向量
  3. 该向量中含有 levels 属性(值为标签)和 class 属性(值为 factor)

数据对象



在 R 语言中,有5中常见的数据结构,分别是:

  1. 原子型向量
  2. 矩阵
  3. 列表
  4. 数据框
  5. 数组

列表

定义:用于将不同数据类型的数据储存在一起
格式:
card <- list("ace", "heart", 1)

数据框

定义:是列表的二维形式
语法:列与列之间数据类型不同,但同列的数据类型相同
格式:
df <- data.frame(face = c("ace", "two", "six"), suit = c("clubs", "clubs", "clubs"), value = c(1, 2, 3))

《R语言入门与实践》第三章:R 对象的更多相关文章

  1. 《R语言入门与实践》第一章:R基础

    前言 本章介绍了 R 语言的基础知识 界面: 使用命令 “ R “进行命令行的实时编译 对象 定义: 用于储存数据的,设定一个名称 格式: a <- 1:6 命名规则: 规则1:不能以数字开头规 ...

  2. 《R语言入门与实践》第二章:R包和帮助文档

    这一章讲了两方面的内容,如何使用 R 包和帮助文档. R包 下载 R 包 命令: install.packages("<nameofpackage>") R 会话中启用 ...

  3. 《R语言实战》读书笔记--第一章 R语言介绍

    1.典型的数据分析过程可以总结为一下图形: 注意,在模型建立和验证的过程中,可能需要重新进行数据清理和模型建立. 2.R语言一般用 <- 作为赋值运算符,一般不用 = ,原因待考证.用-> ...

  4. 《R语言入门与实践》第六章:R 的环境系统

    前言 这一章在对象的基础之上,讲解了对象所处的环境,进一步讲了环境对对象的作用,以及如何使用环境.结构如下: 环境的定义和操作 环境的规则 制作闭包 环境 R 环境的定义 在 R 中,每一个数据对象都 ...

  5. 《R语言入门与实践》第七章:程序

    前言 这一章讲了程序设计的相关知识,经过了: 算法分析 编码 得到最后的程序. if 语句 格式:if (this) {that} else if { another} else { another ...

  6. 《R语言入门与实践》第五章:对象改值

    本章将了如何对一个数据对象中的数据进行改动,分为以下方法: 直接改值 条件取值然后改值 直接改值 单个改值:vec[1] <- 1000多个改值: vec[c(1,3,5)] <- 100 ...

  7. 《R语言入门与实践》第四章:R 的记号体系

    这一章节将如何对 R 对象中的值进行选取,R 的符号规则有两种方式进行查询: 第一种记号体系:索引查询索引语法:deck[ , ](使用中括号)其中[ , ] 为索引,其中含有两个索引参数,用 &qu ...

  8. Python:从入门到实践--第三章--列表简介--练习

    #1.将一些朋友的姓名存储在一个列表中,并将其命名为friends.依次访问该列表中的每个元素,从而将每个朋友的姓名都打印出来. #2.继续使用1中的列表,为每人打印一条消息,每条消息包含相同的问候语 ...

  9. python 从入门到实践 第三章

    在第3章,你将学习如何在被称为列表的变量中存储信息集,以及如何通过遍历列表来操作其中的信息 写注释 # 代码越长 标识好代码的重要性 越来越重要要求习惯:在代码中编写清晰,简洁的注释开始研究更复杂的主 ...

随机推荐

  1. TypeError: Fetch argument 0.484375 has invalid type <class 'numpy.float32'>, must be a string or Tensor. (Can not convert a float32 into a Tensor or Operation.)

    报错: TypeError: Fetch argument 0.484375 has invalid type <class 'numpy.float32'>, must be a str ...

  2. Mybatis下的sql注入

    以前只知道mybatis框架下,order by后面接的是列名是不能用#{},这样不起效果,只能用${},这样的话就可能产生sql注入.后来发现其实还有另外两种情况也是类似的: 1.order by ...

  3. 常用SQL语法

    1.替換A表中B字段中第二个字符 ,), 2.根据 Score 字段 排序 并分页 * from (select row_number() over(order by Score DESC) as r ...

  4. 关于信号打断正在读取终端的read与select来监视0文件描述符的问题

    首先说一下对于这个问题外的一些话: 我觉得我们应该有种质疑的态度,因为接下来的这个问题就和我们平常所想的不一样. 介绍一下问题: 曾经一直听说信号可以打断一个正在阻塞的进程,但是今天我试了一下关于信号 ...

  5. codeforces-3

    C Game"23" #include<iostream> using namespace std; int main() { long long n,m; long ...

  6. c++常用

    常用函数,方便查找,不定时更新. 1. 生成随机数 #include <iostream> #include <stdlib.h> #include <time.h> ...

  7. arcgis for js 根据多边形自动缩放

    交代背景:多边形已经渲染在图层上,然后根据多边形自动缩放值合适的大小: 思路:获取图层信息,获取图层中的几何信息,获取图形范围信息,在地图上设置范围:(下面的方法有封装)记一下思路就好 var pol ...

  8. Java EE开发技术课程

    新的学期开始了,j2e已经上了两节课,接下来就是对该课程的一些作业以及相关的认识: 一.课程目标: Java EE是java的企业级应用,所以在我看来在学习这门课程之前肯定要对java有一个具体的认识 ...

  9. Python格式化字符

    %s 字符串 %d 有符号整数(十进制) %f 浮点数字(用小数点符号)

  10. Gatling实战(三)

    无论是性能测试还是自动化测试,有一个很重要的点就是变量(参数化),因为真实环境是很少同时产生并发很高而且所有参数都一模一样的请求的,就算有这样的接口,开发肯定用缓存来挡了,这种一般不会是瓶颈,真正瓶颈 ...