R语言-六大数据结构
R语言有六种基本的数据结构(或者说数据类型吧)。根据数据的维度和同质/异质可分为5种数据类型,最后再介绍一种特殊的类型“因子”。
同质 | 异质 | |
1维 | 原子向量 | 列表 |
2维 | 矩阵 | 数据框 |
n维 | 数组 |
对于各种类型的具体操作,本文不展开讲。本文仅介绍它们各自的一些生成方式。
(1)原子向量
一个有趣的事情:R中最小的单位并不是“数”,而是“向量”。
例如:
> n=
> is.vector(n) #判断n的数据类型是否为向量
[] TRUE
对于生成一个向量,我们可以有多种方式:
> :
[]
> :
[]
> seq(,,by=)
[]
> c(,,)
[]
(2)列表
列表可以包含数字、字符串、向量,甚至是列表、矩阵、函数。由list()创建。
> a=list(,c(,,),'sfd',T,list(,))
> a
[[]]
[] [[]]
[] [[]]
[] "sfd" [[]]
[] TRUE [[]]
[[]][[]]
[] [[]][[]]
[]
(3)矩阵
二维。由matrix()创建。
> a=matrix(seq(,,by=0.9),nrow=,byrow=TRUE) #行数为4;按行输入(缺省按列输入)
> a
[,] [,] [,]
[,] 0.0 0.9 1.8
[,] 2.7 3.6 4.5
[,] 5.4 6.3 7.2
[,] 8.1 9.0 9.9
(4)数据框
数据帧(Data Frame,有人也叫数据框)也是二维结构,其中每一列包含一个变量的所有值。
数据帧的性质:
- 行名称唯一。
- 列名称非空。
- 存储在数据帧中的数据可以是数字,因子或字符类型。
- 每列应包含相同数量的数据项。(保证其为二维结构)
生成数据帧由data.frame()创建。
> a=data.frame(name=c('Mike','Jane','King','Tom'),height=c(,,,),weight=c(,,,))
> a
name height weight
Mike
Jane
King
Tom
(5)数组
数组可以是多维的。由函数array()创建。
> a=array(c(,,,,),dim=c(,,))
> a
, , [,] [,] [,]
[,]
[,]
[,]
[,] , , [,] [,] [,]
[,]
[,]
[,]
[,]
(6)因子
因子是用于对数据进行分类并将其存储为级别的数据对象。 它们可以存储字符串和整数。 它们在具有有限数量的唯一值的列中很有用。 像“男性”,“女性”和True,False等。它们在统计建模的数据分析中很有用。
使用factor()函数通过将向量作为输入创建因子。
> a=c(T,F,F,T,T,T,F)
> a
[] TRUE FALSE FALSE TRUE TRUE TRUE FALSE
> factor(a)
[] TRUE FALSE FALSE TRUE TRUE TRUE FALSE
Levels: FALSE TRUE
也可由数据帧创建因子:
> a=data.frame(name=c('Mike','Jane','King','Tom'),height=c(,,,),weight=c(,,,))
> a
name height weight
Mike
Jane
King
Tom
> a$name
[] Mike Jane King Tom
Levels: Jane King Mike Tom
参考资料:
1.《高级R语言编程指南》哈德利·威克汉姆(Hadley Wickham)著
2. https://www.w3cschool.cn/r/ R语言教程_w3cscool
R语言-六大数据结构的更多相关文章
- R语言的数据结构
首先声明,R语言对大小写敏感. 一.向量 vector类型可以存储数字.字符和逻辑类型.构建函数为C(): > a <- c(1,2,3,4) > b <- c('dau',' ...
- R语言中数据结构
R语言还是有点古老感觉,数据结构没有Python中那么好用.以下简单总结一下R语言中经常使用的几个数据结构. 向量: R中的向量能够理解为一维的数组,每一个元素的mode必须同样,能够用c(x:y)进 ...
- 从零开始系列-R语言基础学习笔记之二 数据结构(二)
在上一篇中我们一起学习了R语言的数据结构第一部分:向量.数组和矩阵,这次我们开始学习R语言的数据结构第二部分:数据框.因子和列表. 一.数据框 类似于二维数组,但不同的列可以有不同的数据类型(每一列内 ...
- 从零开始系列--R语言基础学习笔记之一 环境搭建
R是免费开源的软件,具有强大的数据处理和绘图等功能.下面是R开发环境的搭建过程. 一.点击网址 https://www.r-project.org/ ,进入"The R Project fo ...
- R语言分析(一)-----基本语法
一, R语言所处理的工作层: 解释一下: 最下面的一层为数据源,往上是数据仓库层,往上是数据探索层,包括统计分析,统计查询,还有就是报告 再往上的三层,分别是数据挖掘,数据展现和数据决策. 由上图 ...
- 【计理05组01号】R 语言基础入门
R 语言基本数据结构 首先让我们先进入 R 环境下: sudo R 赋值 R 中可以用 = 或者 <- 来进行赋值 ,<- 的快捷键是 alt + - . > a <- c(2 ...
- 第二章 R语言数据结构
R语言存储数据的结构包括:标量.向量.矩阵.数组.数据框和列表:可以处理的数据类型包括:数值型.字符型.逻辑型.复数型和原生型. 数据结构 向量 向量是用来存储数值型.字符型或逻辑型数据的一维数组.单 ...
- R+openNLP︱openNLP的六大可实现功能及其在R语言中的应用
每每以为攀得众山小,可.每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~ --------------------------- openNLP是NLP中比较好的开源工具,R语 ...
- R语言入门 :基本数据结构
1.向量 向量是R语言中最基本的数据类型,在R语言中没有单独的变量. (1) 创建向量 R语言中可以用 = 或者 <- 来赋值. 向量名 <- 向量 或 向量名 = 向量 向量的创建方 ...
随机推荐
- 采用WPF技术开发截图程序
前言 QQ.微信截图功能已很强大了,似乎没必要在开发一个截图程序了.但是有时QQ热键就是被占用,不能快速的开启截屏:有时,天天挂着QQ,领导也不乐意.既然是程序员,就要自己开发截屏工具,功能随心所欲 ...
- CSS3 —— 文本 背景 列表 渐变
<span>标签 作用 —— 能让某几个文字或者某个词语凸显出来 候选字体 p {font-family: Times, TimesNR, 'New Century Schoolbook ...
- unity shader 波动圈
c# //////////////////////////////////////////// // CameraFilterPack - by VETASOFT 2018 ///// /////// ...
- linxu passwd 给linux用户设置密码 命令
[root@localhost ~]# passwd # 修改 root 用户的密码 passwd 给linux用户设置密码 命令 passwd www 直接passwd是当前用户设置密码 非交互式修 ...
- python 传址 与传值(暂时保存,后续做分类)
# python 传址 与 传值 # 定义一个函数 用于将 list 下标为2的数据加100 并进行打印 该list def test1(list): list[2]+=100 print(list) ...
- java 不可变对象 final Collections guava 简单样例
本地环境 jdk1.8 连接 Google Guava官方教程(中文版) journaldev 说明 java的final关键字大家都了解,但是final修饰的如果是引用类型,那么不可修改的其实只是重 ...
- 官宣!VS Code Python 全新功能在 PyCon China 全球首发!
北京时间 2019 年 9 月 21 日,PyCon China 2019 在上海举行. 在下午的演讲中,来自微软开发工具事业部的资深研发工程师 在演讲中,我们看到了 Azure Notebook 与 ...
- 【检测工具】keepalived安装及配置
一.keepalived安装 keepalived是一个检测服务器状态的脚本,在高可用机制上经常可以看到它的身影. 在Linux中安装keepalived: 1.在网上直接下载相应的压缩包,推荐链接 ...
- C++循环单链表删除连续相邻重复值
比如:1(头)->2->2->3->3->1->1(头) 去除以后的结果是1->2->3,注意头尾的1也要去掉一个. #include "st ...
- Delphi7 IDE