R语言笔记丨从零学起?环境安装、基础知识、运算法则、数据类型(下)

简介: R语言笔记丨从零学起?环境安装、基础知识、运算法则、数据类型(下)

数据类型

R 语言中的最基本数据类型主要有三种:

  • 数字:一般形式或科学计数法
  • 逻辑:布尔型(TRUE 、FALSE)
  • 文本:字符串String,包含在单引号或者双引号之中。

对象类型分为以下5种:

  • 向量(vector)
> a = c(3, 4)
> b = c(5, 0)
> a + b
[1] 8 4

向量后面加方括号输入数字标号,可以提取向量的一部分元素,也可以使用嵌套条件,如下。

> a = c(10, 20, 30, 40, 50)
> a[1:4] # 取出第 1 到 4 项,包含第 1 和第 4 项
[1] 10 20 30 40
> a[c(1, 3, 5)] # 取出第 1, 3, 5 项
[1] 10 30 50
> a[c(-1, -5)] # 去掉第 1 和第 5 项
[1] 20 30 40

向量也可以和标量进行计算,常用的数学运算函数也能对向量起作用,同时还可以对向量进行排序等操作,如下。

向量数学运算:
> c(1.1, 1.2, 1.3) - 0.5
[1] 0.6 0.7 0.8
> a = c(1,2)
> a ^ 2
[1] 1 4
向量内元素排序:
> a = c(1, 3, 5, 2, 4, 6)
#sort函数升序排列
> sort(a)  
[1] 1 2 3 4 5 6
#rev函数降序排列
> rev(a)  
[1] 6 4 2 5 3 1
#order函数返回向量从小到大排序后在原始向量中位次
> order(a)   
[1] 1 4 2 5 3 6
> a[order(a)]
[1] 1 2 3 4 5 6

向量的统计学处理函数:

  • sum 求和
  • mean 求平均值
  • var 方差
  • sd 标准差
  • min 最小值
  • max 最大值
  • range 取值范围(最大值和最小值)

向量的批量生成可以使用seq(起始值,终止值,length.out=数值个数)命令,就能产生等差数列。也可以使用rep(数字,重复的个数)命令来产生多个重复数字序列。如下。

> seq(1,9,length.out=3)
[1] 1 5 9
> rep(2,5)
[1] 2 2 2 2 2

向量中常会用到NA和NULL表示异常数值。NA表示缺失,代表没有值但位置存在。NULL表示数据不存在,啥也没有无意义。

向量的逻辑处理which()函数用来筛选需要的数据的下标,all()函数用来检查向量是否全都是TRUE,any()函数用来检查向量中是否含有TRUE。如下。

> a = c(11, 12, 13)
> b = a > 12
> print(b)
[1] FALSE FALSE  TRUE
> which(b)
[1] 3
> vector = c(10, 40, 78, 64, 53, 62, 69, 70)
> print(vector[which(vector >= 60 & vector < 70)])
[1] 64 62 69
> all(c(TRUE, TRUE, TRUE))
[1] TRUE
> all(c(TRUE, TRUE, FALSE))
[1] FALSE
> any(c(TRUE, FALSE, FALSE))
[1] TRUE
> any(c(FALSE, FALSE, FALSE))
[1] FALSE
  • 字符串(string)

文字内容以字符串形式储存,可以用'hahaha'单引号或者"hahaha"双引号都行,接下来介绍字符串的操作函数。

#全部转大写
> toupper("ShengXinFenXiBiJi")
[1] "SHENGXINFENXIBIJI"
#全部转小写
> tolower("ShengXinFenXiBiJi")
[1] "shengxinfenxibiji"
#统计字符数
> nchar("ShengXinFenXiBiJi")
[1] 17
#截取编号从1到8的字符
> substr("ShengXinFenXiBiJi",1,8)
[1] "ShengXin"
#截取编号14之后的字符
> substring("ShengXinFenXiBiJi",14)
[1] "BiJi"
#将字符转换为数字
> as.numeric("123")
[1] 123
#将数字转换成字符
> as.character(1234)
[1] "1234"
#以固定分隔符拆分字符
> strsplit("2022;9;16",";")
[[1]]
[1] "2022" "9"    "16"  
#替换字符中的特定内容
> gsub("/","-","2022-9-16")
[1] "2022-9-16"
> gsub("-","/","2022-9-16")
[1] "2022/9/16"
  • 矩阵(matrix)

矩阵由向量生成,向量的值依次以一列一列的方式填充,如果想按行填充,添加byrow=TURE参数。

> vector=c(1, 2, 3, 4, 5, 6)
> matrix(vector, 2, 3, byrow=TRUE)
     [,1] [,2] [,3]
[1,]    1    2    3
[2,]    4    5    6

矩阵中每个值都能直接提取。

> m1 = matrix(vector, 2, 3, byrow=TRUE)
> m1[1,1] # 第 1 行 第 1 列
[1] 1
> m1[1,3] # 第 1 行 第 3 列
[1] 3

矩阵的每一行和每一列都能设置名称,用下列方式完成。

> m1 = matrix(vector,2,3,byrow=TRUE)
> colnames(m1) = c("s","f","f")
> rownames(m1) = c("t","o")
> m1
  s f f
t 1 2 3
o 4 5 6

往期推荐:

文献丨nature发表转录组RNA-seq综述

工具丨markdown编辑器入门
软件丨个人电脑安装Linux虚拟机

笔记丨Linux操作系统入门

相关文章
|
4月前
|
存储 数据挖掘 数据处理
R语言中的数据类型转换:解决常见问题的技术指南
【8月更文挑战第28天】数据类型转换是R语言编程中的一项基本技能,对于确保数据处理的准确性和效率至关重要。本文介绍了R中的基本数据类型及其转换方法,并探讨了解决常见问题的一些技巧。掌握这些知识和技巧,将有助于你更加高效地利用R语言进行数据分析和统计建模。
|
26天前
|
存储
R 语言教程 之 R 数据类型 1
R 语言是一种广泛用于统计计算和图形生成的编程语言。本教程介绍 R 语言的基本数据类型,包括数字、逻辑和文本类型,以及如何定义变量。R 中的变量定义灵活,无需显式声明类型。此外,还介绍了六种主要的对象类型:向量、列表、矩阵、数组、因子和数据框。
33 9
|
26天前
|
存储 Rust Java
R 语言教程 之 R 数据类型 2
R语言中的数据类型涵盖了变量和函数的广泛系统,其中向量(Vector)作为基础数据结构之一,类似于线性表或数组,支持高效的数学运算与操作。向量可通过`c()`函数创建,支持元素级运算、索引访问及部分提取等特性。此外,R提供了如`sort()`、`rev()`和`order()`等函数,方便进行向量的排序与逆序操作。
31 7
|
23天前
|
存储 C语言 索引
R 语言教程 之 R 数据类型 5
R语言中的数据类型包括逻辑型等,逻辑型主要用于向量的逻辑运算。通过`c()`创建向量,使用`&gt;`、`&`等运算符进行条件判断,`which()`函数可筛选符合条件的元素索引。`all()`和`any()`分别用于检测向量是否全为真或含真值。
32 4
|
24天前
|
存储
R 语言教程 之 R 数据类型 4
R语言中的数据类型是用于定义变量或函数的系统。变量类型决定其存储空间及位模式的解析方式。向量可通过c()函数、min:max运算符或seq()函数生成,rep()函数用于生成重复序列。NA表示“缺失”,NULL表示“不存在”。例如,length(c(NA, NA, NULL))返回2,说明NULL在向量中不占位置。
32 5
|
24天前
|
存储
R 语言教程 之 R 数据类型 3
本教程介绍R语言中的数据类型及向量统计函数,包括sum、mean、var等,通过实例展示如何使用这些函数进行基本的统计计算。
29 4
|
23天前
|
存储 Windows Perl
R 语言教程 之 R 数据类型 6
R语言教程之R数据类型第6部分,深入讲解了字符串数据类型及其操作函数,包括大小写转换、字符统计、字符串截取与拆分、类型转换及正则表达式应用等,示例展示了常见字符串处理技巧。
26 1
|
1月前
|
程序员
R 语言教程 之 R 基础运算 1
本章介绍R语言的基础运算,包括赋值(使用`&lt;-`或`=`)和主要的数学运算符,如加、减、乘、除、乘方、整除及求余等,并通过实例演示了这些运算符的使用方法和运算优先级。
40 6
|
29天前
R 语言教程 之 R 基础运算 2
《R 语言教程 之 R 基础运算 2》介绍了 R 语言中的关系运算符及其使用方法。通过示例展示了如何利用 &gt;、&lt;、==、!=、&gt;=、&lt;= 等运算符比较两个向量的对应元素,并返回布尔值结果。
24 3
|
28天前
R 语言教程 之 R 基础运算 5
本章介绍R语言的基础运算,涵盖简单的算术运算及特殊运算符,如冒号(:)创建数字序列、%in%判断元素是否存在于向量中、%*%进行矩阵乘法等,并通过实例演示这些运算符的使用方法。
26 1