当前位置: 首页 > news >正文

R语言易错点(持续更新中~~)

1.R向量元素的索引(下标)是从1开始的,而非0

>x
[1] 1 2 4>x[3]
[1] 4

2.[]和[ [ ] ]

mylist<-list(stud.id=1234,
+ stud.name="Tom",
+ stud.marks=c(10,3,14,25,19))
> mylist
$stud.id
[1] 1234$stud.name
[1] "Tom"$stud.marks
[1] 10  3 14 25 19mylist[[1]]
#输出
[1] 1234
mylist[1]
#输出
$stud.id
[1]1234mode(mylist[[1]])
#输出
[1] "numeric"mode(mylist[1])
#输出
[1] "list"

mylist[[1]]

列表的第一个组件的值

类型为”numeric“

mylist[1]

第一个成分的子列表

类型为“list”

3.标量和一元向量

标量是只包含一个单一数值的数据类型,而长度为一的向量是包含一个元素的向量

# 标量
x <- 5# 长度为一的向量
y <- c(5)通常情况下,标量可以被看作一元向量# 标量
x <- 5# 长度为一的向量
y <- c(5)# 进行乘法运算
result1 <- x * x
result2 <- y * y# 输出结果
print(result1)
print(result2)[1] 25
[1] 25#注意:使用向量化的运算符会使得函数也向量化
#这也适用于很多内置函数,例如round()
> y<-c(1.2,3.9,0.4)
> z<-round(y)
> z
[1] 1 4 0
#round()函数能应用到向量y的每一个元素中,标量实际上就是一元向量,所以对单个数值使用round()函数,只是一种特殊情况
round(1.2)
[1] 1#诸如+这样的运算符实际也是函数
> y<-c(12,5,13)
> y+4
[1] 16  9 17
这样写更加明显> '+'(y+4)
[1] 16  9 17
#在这里我们定义f(),我们希望c是标量,但实际上,他是一个长度为1的向量
#即使我们调用f()时给c指定的是单个数值,在f()计算x+c时,他也会通过循环补齐的方式延展为一个向量。
> f<-function(x,c){
+ return ((x+c)^2)
+ }
> f(1:3,0)
[1] 1 4 9#这意味着f()可以使用显式的向量给c赋值
f(1:3,1:3)
[1] 4 16 36如果想把c限制为1个标量
> f<-function(x,c){
+ if(length(c)!=1)
+ stop("vector c not allowed")
+ return((x+c)^2)
+ }

由以上例子可以总结出以下结论

1.使用向量化的运算符会使得函数也向量化

2. 内置函数和运算符号都可以实现向量化操作,运算符其实是一种函数,这种将运算符作为函数使用的方式被称为函数调用运算符。


内容持续更新中~💖💖💖💖 

http://www.lryc.cn/news/182404.html

相关文章:

  • Multisim14.0仿真(二十七)基于UC3842的反激式开关电源的设计及仿真
  • SpringMVC(二)@RequestMapping注解
  • NXP公司K60N512+PWM控制BLDC电机
  • CAA的VS Studio安装
  • 条件查询和数据查询
  • JSP旅游平台管理
  • 简单走近ChatGPT
  • 10.3作业
  • Springboot中的@Import注解~
  • Linux 安全 - SUID机制
  • Nginx与Spring Boot的错误模拟实践:探索502和504错误的原因
  • 全志ARM926 Melis2.0系统的开发指引①
  • 2024级199管理类联考之数学基础(下篇)
  • HTML之如何下载网页中的音频(二)
  • 【现代机器人学】学习笔记十四:中文版印刷/翻译勘误
  • [架构之路-229]:计算机体硬件与系结构 - 计算机系统的矩阵知识体系结构
  • 第一章 visual studio下载安装
  • 【服务器】在 Linux CLI 下安装 Anaconda
  • Python中Lambda用法
  • nodejs+vue养老人员活体鉴权服务系统elementui
  • 解决caffe中的python环境安装的问题(补充)
  • 面试常用排序查找算法
  • CUDA C编程权威指南:1.1-CUDA基础知识点梳理
  • 讲讲项目里的仪表盘编辑器(四)分页卡和布局容器组件
  • Qt模块、Qt开发应用程序类型、Qt未来主要市场、Qt6功能普及
  • nodejs+vue高校校图书馆elementui
  • CUDA C编程权威指南:1.2-CUDA基础知识点梳理
  • C语言—位运算符
  • 怎么才能实现一个链接自动识别安卓.apk苹果.ipa手机和win电脑wac电脑
  • zookeeper选举机制