R语言 数据类型
R语言数据类型
通常,在使用任何编程语言进行编程时,您需要使用各种变量来存储各种信息。 变量只是保留值的存储位置。 这意味着,当你创建一个变量,你必须在内存中保留一些空间来存储它们。
您可能想存储各种数据类型的信息,如字符,宽字符,整数,浮点,双浮点,布尔等。基于变量的数据类型,操作系统分配内存并决定什么可以存储在保留内存中。
与其他编程语言(如C中的C和java)相反,变量不会声明为某种数据类型。 变量分配有R对象,R对象的数据类型变为变量的数据类型。尽管有很多类型的R对象,但经常使用的是:
- 矢量
- 列表
- 矩阵
- 数组
- 因子
- 数据帧
这些对象中最简单的是向量对象,并且这些原子向量有六种数据类型,也称为六类向量。 其他R对象建立在原子向量之上。
数据类型 | 例 | 校验 |
---|---|---|
Logical(逻辑型) | TRUE, FALSE |
v <- TRUE 它产生以下结果 - [1] "logical" |
Numeric(数字) | 12.3,5,999 |
v <- 23.5 它产生以下结果 - [1] "numeric" |
Integer(整型) | 2L,34L,0L |
v <- 2L 它产生以下结果 - [1] "integer" |
Complex(复合型) | 3 + 2i |
v <- 2+5i 它产生以下结果 - [1] "complex" |
Character(字符) | 'a' , '"good", "TRUE", '23.4' |
v <- "TRUE" 它产生以下结果 - [1] "character" |
Raw(原型) | "Hello" 被存储为 48 65 6c 6c 6f |
v <- charToRaw("Hello") 它产生以下结果 - [1] "raw" |
在R编程中,非常基本的数据类型是称为向量的R对象,其保存如上所示的不同类的元素。 请注意,在R中,类的数量不仅限于上述六种类型。 例如,我们可以使用许多原子向量并创建一个数组,其类将成为数组。
Vectors 向量
当你想用多个元素创建向量时,你应该使用c()函数,这意味着将元素组合成一个向量。
# Create a vector.
apple <- c('red','green',"yellow")
print(apple)
# Get the class of the vector.
print(class(apple))
当我们执行上面的代码,它产生以下结果
[1] "red" "green" "yellow"
[1] "character"
Lists 列表
列表是一个R对象,它可以在其中包含许多不同类型的元素,如向量,函数甚至其中的另一个列表。
# Create a list.
list1 <- list(c(2,5,3),21.3,sin)
# Print the list.
print(list1)
当我们执行上面的代码,它产生以下结果
[[1]]
[1] 2 5 3
[[2]]
[1] 21.3
[[3]]
function (x) .Primitive("sin")
Matrices 矩阵
矩阵是二维矩形数据集。 它可以使用矩阵函数的向量输入创建。
# Create a matrix.
M = matrix( c('a','a','b','c','b','a'), nrow = 2, ncol = 3, byrow = TRUE)
print(M)
当我们执行上面的代码,它产生以下结果
[,1] [,2] [,3]
[1,] "a" "a" "b"
[2,] "c" "b" "a"
Arrays 数组
虽然矩阵被限制为二维,但阵列可以具有任何数量的维度。 数组函数使用一个dim属性创建所需的维数。 在下面的例子中,我们创建了一个包含两个元素的数组,每个元素为3x3个矩阵。
# Create an array.
a <- array(c('green','yellow'),dim = c(3,3,2))
print(a)
当我们执行上面的代码,它产生以下结果
, , 1
[,1] [,2] [,3]
[1,] "green" "yellow" "green"
[2,] "yellow" "green" "yellow"
[3,] "green" "yellow" "green"
, , 2
[,1] [,2] [,3]
[1,] "yellow" "green" "yellow"
[2,] "green" "yellow" "green"
[3,] "yellow" "green" "yellow"
Factors 因子
因子是使用向量创建的r对象。 它将向量与向量中元素的不同值一起存储为标签。 标签总是字符,不管它在输入向量中是数字还是字符或布尔等。 它们在统计建模中非常有用。
使用factor()函数创建因子。nlevels函数给出级别计数。
# Create a vector.
apple_colors <- c('green','green','yellow','red','red','red','green')
# Create a factor object.
factor_apple <- factor(apple_colors)
# Print the factor.
print(factor_apple)
print(nlevels(factor_apple))
当我们执行上面的代码,它产生以下结果
[1] green green yellow red red red yellow green
Levels: green red yellow
# applying the nlevels function we can know the number of distinct values
[1] 3
Data Frames 数据帧
数据帧是表格数据对象。 与数据帧中的矩阵不同,每列可以包含不同的数据模式。 第一列可以是数字,而第二列可以是字符,第三列可以是逻辑的。 它是等长度的向量的列表。
使用data.frame()函数创建数据帧。
# Create the data frame.
BMI <- data.frame(
gender = c("Male", "Male","Female"),
height = c(152, 171.5, 165),
weight = c(81,93, 78),
Age = c(42,38,26)
)
print(BMI)
当我们执行上面的代码,它产生以下结果
gender height weight Age
1 Male 152.0 81 42
2 Male 171.5 93 38
3 Female 165.0 78 26
本文转自:http://codingdict.com/article/2825
R语言 数据类型的更多相关文章
- R语言数据类型
R语言数据类型[转!!]Zhao-Pace https://www.cnblogs.com/zhao441354231/p/5970544.html R语言用来存储数据的对象包括: 向量, 因子 ...
- R语言数据类型与数据结构
一.数据类型 5种 1.character 字符 2.numeric 数值 3.integer 整数 一般数字的存储会默认为数值类型,如果要强调是整数,需要在变量值后面加上 L. x <- 5L ...
- R语言-数据类型与运算符
一.在线安装包 install.packages(package_name) 二.查看变量 ls() 三.删除变量 rm() 四.变量类型 元数据类型:字符,整形,数字,虚数,BOOL 向量:vec= ...
- R语言入门二
一.R语言应知常用函数 1.getwd() 函数:获取工作目录(同eclipse设置workspace类似),直接在R软件中使用,如下图: 2.setwd(dir=”工作目录”) 函数:设置R软件RS ...
- R语言编程艺术# 数据类型向量(vector)
R语言最基本的数据类型-向量(vector) 1.插入向量元素,同一向量中的所有的元素必须是相同的模式(数据类型),如整型.数值型(浮点数).字符型(字符串).逻辑型.复数型等.查看变量的类型可以用t ...
- R语言编程艺术#01#数据类型向量(vector)
R语言最基本的数据类型-向量(vector) 1.插入向量元素,同一向量中的所有的元素必须是相同的模式(数据类型),如整型.数值型(浮点数).字符型(字符串).逻辑型.复数型等.查看变量的类型可以用t ...
- 【R语言入门】R语言中的变量与基本数据类型
说明 在前一篇中,我们介绍了 R 语言和 R Studio 的安装,并简单的介绍了一个示例,接下来让我们由浅入深的学习 R 语言的相关知识. 本篇将主要介绍 R 语言的基本操作.变量和几种基本数据类型 ...
- R语言六种数据类型
1 向量 1.1 定义向量 向量使用c来赋值,向量中不能混合不同类型的数据 x<-c(2,3,7,6,8) 数值型num y<-("one","two&qu ...
- R语言作为BI中ETL的工具
R语言作为BI中ETL的工具,增删改 R语言提供了强大的R_package与各种数据库进行数据交互. 外加其强大数据变换清洗函数,为ETL提供一条方便快捷的道路. RODBC ROracal RMys ...
随机推荐
- json转换为map
// json转换为map public static Map parserToMap(String s) { Map map = new HashMap(); JSONObject json = J ...
- mysql中创建函数
MySql创建函数 一.查看创建函数的功能是否开启: mysql> show variables like '%func%'; +-------------------------------- ...
- 【JavaWeb项目】一个众筹网站的开发(八)后台页面详细设置
一.user.jsp改造 删除引入菜单 抽取导航栏 nav-bar.jsp,删除引入导航栏 删除引入main.jsp的到好烂 数据库里添加url 报错,url不对 没有/ url正确 action=& ...
- leetcode-168周赛-1298-你能从盒子中获得的最大糖果数
题目描述: 方法一:bfs class Solution: def maxCandies(self, status: List[int], candies: List[int], keys: List ...
- vue简单的input校验手机号
<input class="phone input-style " :class="{'err-input' : phone.err}" v-model= ...
- docker组件如何协作(7)
还记得我们运行的第一个容器吗?现在通过它来体会一下 Docker 各个组件是如何协作的. 容器启动过程如下: Docker 客户端执行 docker run 命令. Docker daemon 发现本 ...
- 3.2 Redux TodoApp
上一节讲完了 redux 中的概念,但是仍然没有和 react 联系起来,这一节将利用 redux 在 react 中实现完整的 todolist: 在 react 使用 redux 通过 Provi ...
- 21、Linux命令对服务器网络进行监控
带宽在我们性能测试中是非常重要的一个因素,带宽的理论上传/下载速度是可以进行推算的.比如你的带宽是10m,那么上传/下载理论速度是10/8=1.25m/s.举个例子,服务器上一个文件大小1.25M,我 ...
- Java高级进阶:自定义ClassLoader
假如我们的类不在classpath下,而我们又想读取一个自定义的目录下的class,如果做呢? 读取自定义目录的类 示例读取c:/test/com/test.jdk/Key.class这个类. pac ...
- 4-Ubuntu-启动/关闭/重启mysql服务
启动: sudo service mysql start 关闭: sudo service mysql stop 重启: sudo service mysql restart