- 1、本文档共69页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据方法与R软件2_R的数据结构讲述
首都经济贸易大学 统计学院
任 韬
数据分析方法与R程序
R的数据结构
什么是数据结构
数据结构是计算机存储、组织数据的方式
数据结构是指相互之间存在一种或多种特定关系的数据元素的集合
通常情况下,精心选择的数据结构可以带来更高的运行或者存储效率
数据结构往往同高效的检索算法和索引技术有关
对于任何一种程序设计语言,数据结构都是其核心
3
本章主要内容
向量与向量运算
向量筛选
因子向量
数组和矩阵
列表和数据框
4
关于向量
向量(vector)是R中最基本的数据结构,是其他数据结构的基础
向量是由一组结构相同的数据元素排列而成,其元素之间的顺序是无关的
单个值(标量)被看做是只包含一个元素的向量
向量中的元素可以是各种类型,如数值型,字符型,逻辑型,因子型等
5
最简单的命令
R语言中最简单的命令莫过于通过输入一个对象的名字来显示其内容了。
例如,一个名为n的对象,其内容是数值10,则输入“n”会得到:
方括号中的数字1表示从n的第一个元素开始显示
6
向量的声明
通常在程序设计语言中,若要使用某一个数据结构对象,需要事先对该对象进行“声明”,以便编译系统能够为 该对象分配内存空间
R中的对象无需事先声明,如刚才的例子:
在赋值的同时,对象n就被自动声明为向量类型,并且长度为1.
7
假如我们要创建一个含有五个数值的向量x,且这五个值分别为10.4,5.6,3.1,6.4 和21.7,则R 的命令为:
这是一个用函数c() 完成的赋值语句。这里的函数c() 可以有任意多个参数,而它返回的值则是一个把这些参数首尾相连形成的向量
在R 环境里面,单个的数值也是被看作长度为1的向量。
向量的赋值
函数c()
用逗号分隔
8
向量的赋值
尝试一下下面操作:
9
获取向量的长度
向量的长度(即元素的个数)是向量的非常重要的属性
函数 length(向量名) 可以给出向量的长度,如:
这一函数非常重要,很多时候需要用该函数确定循环次数
10
向量的运算
R是一种函数式语言,其每一个运算符其实也是函数,如:
在算术表达式中使用向量将会对该向量的每一个元素都进行同样算术运算
出现在同一个表达式中的向量最好是长度一致,如果他们的长度不一样,该表达式的值将是一个和其中最长向量等长的向量
11
循环补齐
表达式中短的向量会被循环使用(recycled)以达到最长向量的长度
建立了a、b两个向量
12
基本算术运算
基本的算术运算符就是常用的+,-,*,/
还包括^(做幂运算)、%%(求余数)和%/%(整除)
另外还包括常用的数学函数,如log,exp,sin,cos,tan,sqrt 等等
max 和min 分别给出一个向量的最大值和最小值
函数range 得到的是一个长度为2的向量,即c(min(x), max(x))
length(x) 给出向量x 的元素个数
sum(x)给出x 中元素的累加和
prod(x) 则得到它们的乘积。
13
基本统计运算
计算样本均值:mean(x)
计算样本方差:var(x)
如果var() 的参数是一个n×p 的矩阵,则将该矩阵行与行之间看作是相互独立的p个变量的样本向量,从而得到一个p×p 的样本协方差矩阵
计算样本标准差:sd(x)
14
生成向量
R 有一系列产生常用数列的工具
如1:30 等价于向量c(1, 2, ..., 29, 30)
在R表达式中,冒号优先级别最高,因此2*1:15 等价于c(2, 4, ..., 28, 30)
15
生成向量
函数seq() 是数列生成中最为常用的工具,它有五个参数
起始的两个参数,表示一个数列的首尾
如果只是给定这两个值,则和冒号运算符的效果完全一样了,如seq(2,10) 等价于2:10
seq() 随后的两个参数是by=value 和length=value;它们分别表示这个数列的步长和长度。如果二者没有设定,默认值就是by=1(步长为1),如:
16
生成向量
还有一个相关的函数是rep()。它可以用各种复杂的方式重复一个对象:
先把a 完整拷贝2次,保持a的数列顺序,逐一放在s1中
把a中的每个元素都重复2次,然后将重复2次的元素逐一放入s2
17
逻辑向量
逻辑向量元素可以被赋予的值有TRUE,FALSE 和NA ,前两个值可以分别简写为T 和F。
逻辑向量可以由条件式(conditions)产生。例如:
R 的逻辑运算符是,=,,=,==(相等),!=(不等),(与),|(或),!(非)
在常规的算术运算中采用逻辑变量,它们会被强制转换成数值变量,FALSE 变成0 ,TRUE 变成1
18
逻辑向量
函数any(x)会报告x中是否至少有一个TRUE
函数all(x)会报告x中是否全是TRUE
19
向量中的缺失值
在某些情况
您可能关注的文档
- 数据库原理课后习题答案讲述.doc
- C0359802101411403000063_2103213618解读.doc
- C++语言程序设计实验答案_类与对象解读.doc
- 数据库原理及应用完整教程讲述.ppt
- 数据库上云迁移实践讲述.pptx
- 数据库基本概念复习讲述.doc
- 大数据技术原理与应用2精要.ppt
- 大数据与汽车4S店精要.pptx
- C++高级语言程序设计第八章解读.ppt
- 数据库基础及测试应用讲述.pptx
- 人教版九年级英语全一册单元速记•巧练Unit13【速记清单】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit9【速记清单】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit11【速记清单】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit14【单元测试·提升卷】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit8【速记清单】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit4【单元测试·提升卷】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit13【单元测试·基础卷】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit7【速记清单】(原卷版+解析).docx
- 苏教版五年级上册数学分层作业设计 2.2 三角形的面积(附答案).docx
- 人教版九年级英语全一册单元速记•巧练Unit12【单元测试·基础卷】(原卷版+解析).docx
文档评论(0)