R语言数据类型与数据结构
一.数据类型 5种
1.character 字符
2.numeric 数值
3.integer 整数 一般数字的存储会默认为数值类型,如果要强调是整数,需要在变量值后面加上 L。 x <- 5L class(x)
4.complex 复数 1+2i
5.logical 逻辑 TRUE&FALSE
class()查看数据类型
R语言对大小写敏感
二。数据结构
属性:名称、维度、类型、向量结构
向量(vector):只能包含同一类型的对象。
创建向量方法1:x1 <- vector("integer",length = 4)
方法2:x2 <- 1:4
方法3:x3 <- c(1,2,3,4)
向量的其他特点,如果往向量里传的数据类型不一样,向量会强制转成同一种类型。x <- c(TRUE,10,"a") 结果都会转换成字符型元素。
向量数据类型的转换:as.xxx()
向量还可以给参量命名:
names(向量名) <- c(跟参量数量一致的名字)
向量名
矩阵和数组|matrix&array
矩阵可以看做 向量+维度属性(整数向量:nrow,ncol)
x<-matrix(1:4,nrow=2,ncol=2)

矩阵的填充方式是按列填充。
矩阵的相关函数:dim(x) 查看矩阵行列信息。
attributes()可以查询矩阵属性。
其他创建矩阵的办法(矩阵其实就是向量+维度信息)

矩阵的拼接:
按行拼接
按列拼接
数组 array
数组与矩阵非常相似,只是维度可以大于2


列表(是r中非常重要的数据结构
)
跟前面数据结构最大不同是可以包涵不同类型对象;可以直接给列表里的元素命名。


如何给矩阵的每行、每列命名?
用dimnames()

因子
分类数据,可分成有序和无序(按能否比大小来区分)



缺失值
NA&NaN
NA不属于NaN,NaN属于NA
NaN用来表示非法运算导致的缺失值,NA用来表示的范围更广。
相关函数,判断是否是na或nan is.na()
缺失值的处理,用平均数或者众数去补全。
数据框(data.frame())
用来存储表格数据,跟列表、矩阵关系都很密切。

日期与时间结构
时间分成两个类型,POSIXct/POSIXlt
表示距离1970-01-01过去了多少秒。前者存储的数据是整数,常寸在数据框中
POSIXlt是列表,包含年月日星期等

一个数据矩阵的每一行数据叫作一次观测,每一列叫作一个变量。
R语言数据类型与数据结构的更多相关文章
- R语言数据类型
R语言数据类型[转!!]Zhao-Pace https://www.cnblogs.com/zhao441354231/p/5970544.html R语言用来存储数据的对象包括: 向量, 因子 ...
- R语言 数据类型
R语言数据类型 通常,在使用任何编程语言进行编程时,您需要使用各种变量来存储各种信息. 变量只是保留值的存储位置. 这意味着,当你创建一个变量,你必须在内存中保留一些空间来存储它们. 您可能想存储各种 ...
- R 语言中的数据结构
基本数据类型 6种 numaric 如 12, 12.4 integer 如 2L,0L complex 包含实数和虚数 如 3+2i character 要用双引号或者单引号包括起来 如 & ...
- R语言-数据类型与运算符
一.在线安装包 install.packages(package_name) 二.查看变量 ls() 三.删除变量 rm() 四.变量类型 元数据类型:字符,整形,数字,虚数,BOOL 向量:vec= ...
- R语言笔记:快速入门
1.简单会话 > x<-c(1,2,4) > x [1] 1 2 4 R语言的标准赋值运算符是<-.也可以用=,不过不建议用它,有些情况会失灵.其中c表示连接(concaten ...
- R语言入门二
一.R语言应知常用函数 1.getwd() 函数:获取工作目录(同eclipse设置workspace类似),直接在R软件中使用,如下图: 2.setwd(dir=”工作目录”) 函数:设置R软件RS ...
- R语言快速入门
R语言是针对统计分析和数据科学的功能全面的开源语言,R的官方网址:http://www.r-project.org/ 在Windows环境下安装R是很方便的 R语言的两种运行模式:交互模式和批处理模 ...
- 从零开始系列-R语言基础学习笔记之二 数据结构(二)
在上一篇中我们一起学习了R语言的数据结构第一部分:向量.数组和矩阵,这次我们开始学习R语言的数据结构第二部分:数据框.因子和列表. 一.数据框 类似于二维数组,但不同的列可以有不同的数据类型(每一列内 ...
- R语言的数据结构
首先声明,R语言对大小写敏感. 一.向量 vector类型可以存储数字.字符和逻辑类型.构建函数为C(): > a <- c(1,2,3,4) > b <- c('dau',' ...
随机推荐
- 测试tensorflowgpu版本是否可用
输入一下代码即可 import tensorflow as tf print(tf.test.is_gpu_available())
- centos 6.5 安装 maven
从nexus官网下载Nexus Repository Manager OSS 2.x的安装包:nexus-2.14.1-01-bundle.tar.gz,3.x版本需要jdk8及以上 解压 tar x ...
- 【java】Split函数踩坑记
先看一段代码: String line = "openssh|7.1"; String[] pkg = line.split("|"); System.out. ...
- php compact()函数 语法
php compact()函数 语法 作用:创建包含变量名和它们的值的数组.大理石构件哪家好 语法:compact(var1,var2...) 参数: 参数 描述 var1 必需.可以是带有变量名的字 ...
- Python_014(面向对象之继承)
一.面向对象之继承 1.初始继承 引入:面向对象的三大特性:继承,多态,封装 a.继承是创建新类的一种方式,在python中,新建的类可以继承一个或多个父类,父类又可称为基类或超类;新建的类称为派生类 ...
- linux vim设置和 快捷命令配置
1.vim配置 set tabstop= set shiftwidth= set softtabstop= set fileencodings=utf-,ucs-bom,gb2312,gbk,gb18 ...
- CSS实现回到顶部图片hover后改变效果
任何网站中回到顶部元素不可缺少,一般为了实现交互效果,都会在鼠标hover后元素样式有所改变.今天这个实例便是采用CSS中的transform知识实现. hover: <!DOCTYPE htm ...
- BZOJ 5170: Fable
离散化+树状数组 求当前位之前是否有k位比它大 这样的话它就需要前移k位 剩下的按照原来的顺序依次填入 其实我觉得sort一下就可以做出来了 太久没写树状数组了 所以写了一下树状数组 #include ...
- django中的url控制
1.django中的第一个控件:url控制 (路由分发) urls.py:请求路径与视图函数的之间的关系 步骤: 1.首先是要配置环境, 2.其次就是引路径 3.在视图的文件夹里面写相应的函 ...
- day06—JavaScript之闭包
转行学开发,代码100天——2018-03-22 第一次听说“闭包”这个词,还是在2015年某个深夜在听一节腾讯课堂的公开课上,当时老师讲什么已经没有清晰的记忆了,只知道是一次web的开发课程. 过了 ...