R实验 基础(二)

  • 实验目的:
  1. 掌握向量的几种类型:数值向量、逻辑向量、字符向量、复数向量;
  2. 掌握生成向量几个的函数使用和向量的下标运算;
  3. 掌握因子的定义和相关函数的使用。

  • 实验内容:
  1. R语言中,数值向量用得非常多。生成数值向量的函数有:
    1. c(),生成任意数据构成的向量
    2. :,生成公差为+1或-1的等差数列构成的向量
    3. seq(),生成任意公差的等差数据构成的向量
    4. rep(),生成重复数据构成的向量

利用上述函数完成以下小题,并将代码和运行结果截图粘贴于每小题之下的空行。

生成一个向量,其元素是-π到π之间、公差为π/10的等差数列。

  • 实验内容:
  1. R语言中,数值向量用得非常多。生成数值向量的函数有:
    1. c(),生成任意数据构成的向量
    2. :,生成公差为+1或-1的等差数列构成的向量
    3. seq(),生成任意公差的等差数据构成的向量
    4. rep(),生成重复数据构成的向量

生成一个向量,其元素是10,20之间的10个等差数据数列。

生成一个向量,其元素是10,20之间的等差数列,元素个数与由5:17生成的向量的个数相同。

生成一个向量,其元素是由1~10,1~10这20个整数组成。

生成一个向量,其元素是由1~10中的每个数重复3次组成。

建立一个R文件,在文件中输入变量x = (1,2,3)T, y = (4,5,6)T,计算z = 2x + y + e,其中 e = (1,1,1)T。

构造一个向量x,向量是由5个1,3个2,4个3和2个4构成,注意用到 rep()函数。

逻辑向量:由TRUE(T)或FALSE(F)组成的向量称为逻辑向量,如z <- c(T, F, F, F)。对数值向量做逻辑运算(如:<, <=, >, >=, ==(等于), !=(不等于)),可以构造逻辑向量。

已知 x <- 1:5,完成以下练习,并在R中运行进行验证。

若y <- x > 3,则逻辑向量y等于什么? 

all(x>3)的结果是?

any(x>3)的结果是?

which(x>3)的结果是?

字符向量:由字符组成的向量称为字符向量,如z <- c("Tim", "Tom", "John", "Fan")。R语言中与字符向量有关的函数是paste(),它可以把多个向量对应的元素默认用一个空格连接起来,向量长度不同时,较短的向量会被重复使用。当其中有向量为数值向量时,连接时会自动转换成适当的字符串。另一个相似的函数是paste0(),此函数是把多个向量对应的元素直接连接起来。

完成以下练习,并在R中运行进行验证。

paste("Today is", date())的结果是?

labs<-paste("X", 1:6, sep = ""),参数sep表示连接多个向量中各对应数据所用的分隔字符,缺省为空格,则labs等于?

对比:labs1<-paste("X", 1:6),则labs1等于?

paste0("X", 1:6)的结果是?

paste(c("X","Y"), 1:8, sep="_")的结果是?

paste0(c("X","Y"), 1:8)的结果是?

数值向量的下标运算。在R语言中,向量的下标从1开始。数值向量的下标可以是:

正整数

负整数

向量(元素是正整数)

向量(元素是负整数)

逻辑向量

字符

已知v <- 10:20,完成以下练习,并在R中运行进行验证。

v[10]

v[c(1,3,5,9)]

v[1:5]

v[-1]

v[-(1:5)]

v[v>15]

在定义向量时可以给元素加上名字,如ages <- c(Li=33, Zhang=29, Liu=18),此时ages["Liu"]的结果为?ages[3]的结果为?

影响试验指标的原因或原因组合,称为因素或因子(factor),这些因子通常是名义变量或者有序变量,常用大写字母A、B、C等表示。每个试验因素的不同状态,称为因子水平,简称为水平(level)。在R语言中,生成因子的函数有两个:

factor():将一个向量转换成因子

gl():生成有规律的因子,在方差分析中经常会用到

完成以下练习,并在R中运行进行验证。

已知5位学生的性别,先利用c()函数生成字符向量,然后利用factor()函数生成因子变量。

sex <- c("M","F","M","M","F")

(sexf <- factor(sex)) #体会向量sex与因子sexf的区别

factor(1:3, levels=1:5) #水平数可以比向量元素个数多

factor(1:3 ,labels=c("A","B","C"))

gl(3,5) # 3是因子水平数, 5是每个水平数的重复次数

gl(3, 5, labels=paste0("A", 1:3))

gl(5,1,15) # 15是结果的总长度

gl(5,1,15, labels=paste0("B",1:5))

思考:(以下运算类型的题目请先进行笔算后,再在R中运算核对)

在R语言中,向量分为_________、__________、__________和复数向量。

数值向量,字符向量,逻辑向量

已知 n<- 5,则1:n-1与1:(n-1)的结果分别是什么?

rep(1:10, length.out=12),这段代码会出错吗?如果不会,结果是什么?

c(1,4)*c(2,3)的输出结果是什么?

因子与普通向量有什么区别?在R语言中定义一个因子有哪两个函数?

在R语言中,因子(factor)与普通向量(vector)有以下区别:

数据类型不同:因子是一种特殊的数据类型,而普通向量可以是任意数据类型,例如数值型、字符型、逻辑型等。

存储方式不同:因子是使用整数表示每个不同的水平(level),而普通向量直接存储数据本身。

有限的取值范围:因子的取值范围是有限的,即只能从事先定义好的水平中选择,而普通向量可以取任意值。

在R语言中,定义一个因子可以使用以下两个函数:

factor()函数gl()函数

vec<- c(2,4,6,8,10); vec[2]; vec[-2]的输出结果是什么?

测量得到了5位男士的体重和身高的数据如下:

体重(kg):60, 75, 65, 68, 70

身高(cm):170, 180, 165, 172, 178

分别存储在向量weight和height中。若想得到那些身高超过170cm的男士的体重数据,请写出相应的R代码。

weight[height > 170]

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/706574.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

探索Docker:在本地开发与云端部署之间实现无缝切换

探索Docker&#xff1a;在本地开发与云端部署之间实现无缝切换 摘要&#xff1a; 在这个时代&#xff0c;我们都在寻找一种能够在本地和云端无缝切换的解决方案。我们的团队和一群【老六】一起&#xff0c;研究了如何使用Docker来实现这个目标。我们的研究成果将帮助IT开发人员…

错误、调试和测试

在程序运行过程中&#xff0c;总会遇到各种各样的错误。 有的错误是程序编写有问题造成的&#xff0c;比如本来应该输出整数结果输出了字符串&#xff0c;这种错误我们通常称之为bug&#xff0c;bug是必须修复的。 有的错误是用户输入造成的&#xff0c;比如让用户输入email地…

【k8s】kubernetes更新操作详解--kubectl apply(patch、replace)

1. 背景 OpenKruise 是阿里云开源的大规模应用自动化管理引擎&#xff0c;在功能上对标了 Kubernetes 原生的 Deployment / StatefulSet 等控制器&#xff0c;但 OpenKruise 提供了更多的增强功能如&#xff1a;优雅原地升级、发布优先级/打散策略、多可用区workload抽象管理、…

C#知识|上位机子窗体嵌入主窗体方法(实例)

哈喽,你好啊,我是雷工! 上位机开发中,经常会需要将子窗体嵌入到主窗体, 本节练习C#中在主窗体的某个容器中打开子窗体的方法。 01 需求说明 本节练习将【账号管理】子窗体在主窗体的panelMain容器中打开。 账号管理子窗体如下: 主窗体的panelMain容器位置如图: 02 实现…

AI试卷怎么解答问题?分享4款AI答题助手

AI试卷怎么解答问题&#xff1f;在数字化与智能化的双重推动下&#xff0c;AI试卷解答问题正逐步成为教育领域的新宠。这一技术不仅为学生们提供了全新的学习途径&#xff0c;更让他们在面对试卷难题时&#xff0c;能够迅速找到解题思路&#xff0c;减少时间浪费。AI的精准解答…

主流短视频评论采集python爬虫(含一二级评论内容)

声明 仅用于学习交流&#xff0c;不用于其他用途 正文 随着主流短视频评论采集更新需要登录&#xff0c;由于不懈的努力&#xff0c;攻破这一难点&#xff0c;不需要登录采集作品所有评论信息 话不多说上代码看效果&#xff1a; 输入作品id: 这样就拿到评论信息了&#xff…

标题:轻松掌握Python列表拼接:方法、示例与最佳实践

在Python编程中&#xff0c;列表&#xff08;List&#xff09;是一种非常常用的数据结构&#xff0c;用于存储一系列有序的元素。在日常编程中&#xff0c;我们经常需要将两个或多个列表拼接起来形成一个更长的列表。本文将详细介绍如何在Python中实现列表的拼接&#xff0c;包…

深入理解 Spring 循环依赖之三级缓存(附源码分析)

前言&#xff1a; 学过 Spring 的都知道 Spring 利用三级缓存解决了循环依赖问题&#xff0c;那你知道什么是循环依赖&#xff1f;什么又是三级缓存&#xff1f;本篇将从源码层面分析 Spring 是怎么去利用三级缓存帮我们解决循环依赖问题。 深入理解 Spring IOC 底层实现机制…

element 表格滚动条滑动,表格错位

解决办法&#xff08;主要是根据滚动条的宽度决定的&#xff0c;可自行调整&#xff09; 1、.el-table__header-wrapper { width: 99.3% !important; } 2、.el-table__header-wrapper { padding-right: 10px!important; }

Git—常用命令

官方 Git - Book (git-scm.com) 常用命令 命令作用git config --global user.name 用户名设置用户作者git config --global user.email 邮箱设置用户邮箱 git init初始化本地仓库git status查看本地仓库状态 git add 文件名 添加到暂存区git commit -m "提交日志…

【气象常用】时间序列的线性拟合

效果图&#xff1a; 主要步骤&#xff1a; 1. 数据准备&#xff1a;下载Hadley Centre observations datasets的HadSST数据 可参考【气象常用】时间序列图-CSDN博客 2. 数据处理&#xff1a;计算线性拟合 3. 图像绘制&#xff1a;绘制折线及拟合线&#xff0c;并添加文本 …

数据分析案例-印度美食数据可视化分析

&#x1f935;‍♂️ 个人主页&#xff1a;艾派森的个人主页 ✍&#x1f3fb;作者简介&#xff1a;Python学习者 &#x1f40b; 希望大家多多支持&#xff0c;我们一起进步&#xff01;&#x1f604; 如果文章对你有帮助的话&#xff0c; 欢迎评论 &#x1f4ac;点赞&#x1f4…