如果学过像JAVA或者C这样的高级语言,都知道,数据类型的概念,包括,整数型、浮点型、字符串、布尔类型。这些语言中,定义变量需要定义数据类型,而在R中不需要。只需要直接赋值即可。在给变量赋值时,R中可以用

对于数据的运算,和其他语言差不多。

向量

1向量的创建向量是用于存储数值型、字符型或逻辑型数据的一维数组。执行组合功能的函数c()可用来创建向量。各类向量如下例所示:

> a c(> b c(> c c(

这里,a是数值型向量,b是字符型向量,而c是逻辑型向量。注意,单个向量中的数据必须拥有相同的类型或模式(数值型、字符型或逻辑型)。同一向量中无法混杂不同模式的数据。

通过在方括号中给定元素所处位置的数值,我们可以访问向量中的元素。例如,a[c(2, 4)]用于访问向量a中的第二个和第四个元素。

> a[c(2, 4)]

使用的冒号用于生成一个数值序列。例如,a

2创建向量的函数seq()函数

seq()函数可以用来创建向量,下面是创建1-9,步长为2 向量。

> v1 = seq(1,9,by =2)> v1

也可以不指定步长,指定个数,R会自己计算步长。

> seq(0, 1, length.out = 11)

如果不写开始的数和步长,默认从1开始,步长为1。

不指定起始值,就不能定义步长。

更多seq()的使用方法通过help("seq")查看。

## Default S3 method:seq(from = 1, to = 1, by = ((to - from)/(length.out - 1)),    length.out = NULL, along.with = NULL, ...)seq.int(from, to, by, length.out, along.with, ...)seq_along(along.with)seq_len(length.out)

rep()函数

rep()函数可以用来重复复制元素。

> rep(1,5) #把1重复五遍[1] 1 1 1 1 1> v1 11,> rep(v1,2) [1] 11 12 13 14 15 11 12 13 14 15> rep(1:4, 2)#1-4重复2次[1] 1 2 3 4 1 2 3 4> rep(1:4, each = 2)# 1-4的每个元素重复2次,注意和上面的区别。[1] 1 1 2 2 3 3 4 4> rep(1:4, c(2,2,2,2))#指定每个元素的重复次数。[1] 1 1 2 2 3 3 4 4> rep(1:4, c(2,1,2,1))#指定每个元素的重复次数。[1] 1 1 2 3 3 4> rep(1:4, each = 2, len = 4)# each = 2指定了1-4每个元素重复2次,理论上有8个元素,# 但又指定的元素的总长度len = 4,因此后面的3 3 4 4没有显示。[1] 1 1 2 2> rep(1:4, each = 2, len = 10)# 指定了总长度为len = 10,但rep(1:4, each = 2)的结果只要8个元素# 不足10个,会从头自动补齐。所以多了1 1. [1] 1 1 2 2 3 3 4 4 1 1> rep(1:4, each = 2, times = 3)#先每个元素重复2次后,再重复3次 [1] 1 1 2 2 3 3 4 4 1 1 2 2 3 3 4 4 1 1 2 2 3 3 4 4

向量连接

> c1 > c1[1] 1 2 3 4> c2> c2[1] 5 6 7 8> c3 > c3 [1] 1 2 3 4 5 6 7 8#要注意的是,向量连接只能用于同一类型的数据,同为数值,同为字符串或布尔值。

向量拼接

> cbind(c1,c2)#按列拼接     c1 c2[1,]  1  5[2,]  2  6[3,]  3  7[4,]  4  8> rbind(c1,c2)#按行拼接   [,1] [,2] [,3] [,4]c1    1    2    3    4c2    5    6    7    8

3向量运算

#长度相等的向量进行加减乘除运算时,对应元素进行相应的运算。> c1+c2[1]  6  8 10 12> c1*c2[1]  5 12 21 32> c1/c2[1] 0.2000000 0.3333333 0.4285714 0.5000000> c1+c3# 如果2个向量长度不等,会按照短的向量重复运算补齐[1]  2  4  6  8  6  8 10 12

r语言逻辑向量相加_R语言基础教程——第3章:数据结构——向量相关推荐

  1. iOS游戏框架Sprite Kit基础教程第1章编写第一个Sprite Kit程序

    iOS游戏框架Sprite Kit基础教程第1章编写第一个Sprite Kit程序 程序是为了实现特定目标或解决特定问题而用计算机语言编写的命令序列的集合.本章将以编写第一个Sprite Kit程序为 ...

  2. Unity4.x 2D游戏开发基础教程第1章Unity及其组成的介绍

    Unity4.x 2D游戏开发基础教程第1章Unity及其组成的介绍 本书主要讲解的是,如何使用Unity开发2D游戏.但在开始讲解之前,最好先熟悉一下Unity这个工具.本章会首先介绍Unity的下 ...

  3. 计算机应用基础李健,计算机应用基础教程 李健苹 计算机应用基础教程 第4章...

    计算机应用基础教程 李健苹 计算机应用基础教程 第4章 (58页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 9.90 积分 主讲人:李健苹 2011.2 ...

  4. R语言怎么写积分_R语言入门的基本操作(1)

    大家好,这是从知乎<一个大学生的日常笔记>中迁移过来的R语言教程的第一篇. 这一份笔记follow了两本非常优秀的R语言教材,分别是Robert I.Kabacoff的<R语言实战& ...

  5. R循环有两个_R语言数据分析与挖掘(第九章):聚类分析(2)——层次聚类

    层次聚类(hierarchical clustering)基于簇间的相似度在不同层次上分析数据,从而形成树形的聚类结构,层次聚类一般有两种划分策略:自底向上的聚合(agglomerative)策略和自 ...

  6. python计算运动会某个参赛选手的得分。数据保存在文件中_Python基础教程之第二章---变量和字符串(1) 搬运...

    Python变量及其使用 无论使用什么语言编程,其最终目的都是对数据进行处理.程序在编程过程中,为了处理数据更加方便,通常会将其存储在变量中. 形象地看,变量就像一个个小容器,用于"盛装&q ...

  7. python程序设计与基础教程第六章上机实验_《Python程序设计与算法基础教程》教学大纲.doc...

    PAGE 1/ NUMPAGES 2 作者:江红.余青松 定价:59元 ISBN:9787302466833 <算法与程序设计>课程教学大纲 Programming and algorit ...

  8. Python机器学习基础教程-第2章-监督学习之K近邻

    前言 本系列教程基本就是摘抄<Python机器学习基础教程>中的例子内容. 为了便于跟踪和学习,本系列教程在Github上提供了jupyter notebook 版本: Github仓库: ...

  9. r 多元有序logistic回归_R语言多分类logistic逻辑回归模型在混合分布模拟单个风险损失值评估的应用...

    原文链接 拓端数据科技 / Welcome to tecdat​tecdat.cn 通常,我们在回归模型中一直说的一句话是" 请查看一下数据 ". 在上一篇文章中,我们没有查看数据 ...

最新文章

  1. python详细安装教程环境配置-如何安装Python(环境设置)?详细安装步骤图解
  2. .c和.cpp的区别
  3. php无法创建cookie,php-curl cookie无法成功创建
  4. ICCV 2019 | 清华等联合提出高精度、高效率点云3D重建网络框架PointMVSNet
  5. 设计模式笔记十六:解释器模式
  6. 论文笔记_S2D.66_ICRA_2021_LVI-SAM: 紧耦合的激光视觉惯导SLAM系统
  7. “独立博客”为什么独立?
  8. php 5.4中php-fpm 的重启、终止操作命令
  9. Linux系统无法载入nvidia-smi驱动
  10. WebRTC源码架构浅析
  11. 淘宝数据分析必须知道的15个核心问题
  12. Fast Non-Bayesian Poisson Factorization for Implicit-Feedback Recommendations
  13. c++算法解决力扣跳步问题
  14. 基于JAVA网上家教信息管理系统计算机毕业设计源码+数据库+lw文档+系统+部署
  15. 【Windows】电脑蓝牙突然无法使用,解决办法来了
  16. 中西医结合外科疾病 100247
  17. C++人工智能相关书籍
  18. 防止表单重复提交方法
  19. PyTorch 深度剖析:并行训练的 DP 和 DDP 分别在什么情况下使用及实例
  20. 【JavaP6大纲】功能设计篇:秒杀场景设计

热门文章

  1. Unet项目解析(5): 数据封装、数据加载、数据显示
  2. web.xml 中的listener、 filter、servlet 加载顺序及其详解
  3. 禁止复制的网页怎么复制
  4. Nginx反向代理负载均衡时,验证码不正确
  5. 自平衡二叉树(Self-balancing binary search tree)
  6. 【译】Privacy and machine learning: two unexpected allies
  7. 【译】A Brief History of P2P Content Distribution, in 10 Major Steps
  8. 【译】Jumping into Solidity — The ERC721 Standard (Part 2)
  9. (整理)用户空间_内核空间以及内存映射
  10. 分布式入门:常用的分布式基础算法