《R语言入门与实践》第三章:R 对象
在这一章,包含的内容有:
- R 的数据类型
- 属性
- 类(特殊的属性)
- Ruby 的数据结构
R 数据类型
R 可以识别六种类型的数据类型,分别是:
- double
- integer
- character
- logical
- complex(负数)
- raw(机器代码)
integer 整型
格式: 在数字后加“L”,比如:-1L, 2L, 4L..
complex 复数
格式:将某个数字与复数相加,比如: 1 + 1i, 1+2i ...
raw 数据的原始子节
格式: raw(n)
功能:生成长度为 n 的空原始类型向量
R 属性
定义: 对象的 metadata, 将与这个对象相关的信息以一种便捷的形式存起来并且附加给该对象.
一个原子型向量具有三种属性:
- 名称: name
- 维度: dim
- 类: 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
- 向 factor 函数传递一个向量,生成因子
- 因子为一个整形向量
- 该向量中含有 levels 属性(值为标签)和 class 属性(值为 factor)
数据对象


在 R 语言中,有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 对象的更多相关文章
- 《R语言入门与实践》第一章:R基础
前言 本章介绍了 R 语言的基础知识 界面: 使用命令 “ R “进行命令行的实时编译 对象 定义: 用于储存数据的,设定一个名称 格式: a <- 1:6 命名规则: 规则1:不能以数字开头规 ...
- 《R语言入门与实践》第二章:R包和帮助文档
这一章讲了两方面的内容,如何使用 R 包和帮助文档. R包 下载 R 包 命令: install.packages("<nameofpackage>") R 会话中启用 ...
- 《R语言实战》读书笔记--第一章 R语言介绍
1.典型的数据分析过程可以总结为一下图形: 注意,在模型建立和验证的过程中,可能需要重新进行数据清理和模型建立. 2.R语言一般用 <- 作为赋值运算符,一般不用 = ,原因待考证.用-> ...
- 《R语言入门与实践》第六章:R 的环境系统
前言 这一章在对象的基础之上,讲解了对象所处的环境,进一步讲了环境对对象的作用,以及如何使用环境.结构如下: 环境的定义和操作 环境的规则 制作闭包 环境 R 环境的定义 在 R 中,每一个数据对象都 ...
- 《R语言入门与实践》第七章:程序
前言 这一章讲了程序设计的相关知识,经过了: 算法分析 编码 得到最后的程序. if 语句 格式:if (this) {that} else if { another} else { another ...
- 《R语言入门与实践》第五章:对象改值
本章将了如何对一个数据对象中的数据进行改动,分为以下方法: 直接改值 条件取值然后改值 直接改值 单个改值:vec[1] <- 1000多个改值: vec[c(1,3,5)] <- 100 ...
- 《R语言入门与实践》第四章:R 的记号体系
这一章节将如何对 R 对象中的值进行选取,R 的符号规则有两种方式进行查询: 第一种记号体系:索引查询索引语法:deck[ , ](使用中括号)其中[ , ] 为索引,其中含有两个索引参数,用 &qu ...
- Python:从入门到实践--第三章--列表简介--练习
#1.将一些朋友的姓名存储在一个列表中,并将其命名为friends.依次访问该列表中的每个元素,从而将每个朋友的姓名都打印出来. #2.继续使用1中的列表,为每人打印一条消息,每条消息包含相同的问候语 ...
- python 从入门到实践 第三章
在第3章,你将学习如何在被称为列表的变量中存储信息集,以及如何通过遍历列表来操作其中的信息 写注释 # 代码越长 标识好代码的重要性 越来越重要要求习惯:在代码中编写清晰,简洁的注释开始研究更复杂的主 ...
随机推荐
- Centos7安装jexus,部署asp.net core,asp.net mvc
什么是Jexus 官网解释:https://www.jexus.org/ Jexus是一款Linux平台上的高性能WEB服务器和负载均衡网关,Jexus Web Service,简称JWS,以支持AS ...
- namenode No valid image files
1,角色日志报错 Encountered exception loading fsimage java.io.FileNotFoundException: No valid image files f ...
- Leetcode Articles: Insert into a Cyclic Sorted List
Given a node from a cyclic linked list which has been sorted, write a function to insert a value int ...
- JavaIO流——简单对文件的写入及读取(一)
IO,即Input(输入)和Output(输出)的首字母缩写. 在编程语言的I/O类库中常使用流这个抽象概念.它代表任何有能力产出数据的数据源对象或者是与能力接收数据的接收端对象.“流”屏蔽了实际的I ...
- java快排思想
1分治思想 1.1比大小在分区 1.2从数组中取出一个数做基准数 1.3将比他小的数全放在他的左边,比他大的数全放在他的右边 1.4然后递归 左边 和右边 }
- JDBC事务的相关知识
事务的定义 事务(Transaction):是并发控制的单元,是用户定义的一个操作序列.这些操作要么都做,要么都不做,是一个不可分割的工作单位.通过事务,sql server 能将逻辑相关的一组操作绑 ...
- Linux资源分析工具杂谈(长文慎入)
Linux资源分析工具杂谈 开篇之前请大家先思考一个问题: 磁盘的平均I/O响应时间是1 ms,这个指标是好,还是差? 众所周知,计算机科学是客观的,也就是说对于一个给定的问题,我们总是 ...
- asp.net 去掉小数点后面多余的0,本身为0则不显示
很多时候,比如gridview内,不想现实从数据库带出的多余小数 ,比如 4.01000 ,可显示为 4.01 如果是 0.00000, 则显示为空白 /// <summary> /// ...
- elasticsearch开机启动脚本
最近搭建了一个elasticsearch服务,其中机器重启而ES服务没有重启是问题,就有下面的脚本 #!/bin/sh #chkconfig: #description: es export JAVA ...
- 安利一款强大的学习软件XMind(顺便放上这几天制作的JavaSE的思维导图day1-day4)
最近在学习Java,并且在使用一款非常酷炫无敌吊炸天的软件,思维导图制作神器-XMind,然后就像分享给大家,至于XMind是什么大家自行百度,在这里我就不赘述了 我这里说下我认为的好的实用的常用快捷 ...