R语言学习笔记
1.R语言介绍
2.R语言安装
官网:https://www.r-project.org/
CARN → 选择China中任意镜像站点 → Download R for Windows → base(二进制版本R基础软件)→
Download R-4.2.2 for Windows (76 megabytes, 64 bit)
3.Rstudio安装
https://posit.co/download/rstudio-desktop/
DOWNLOAD RSTUDIO → DOWNLOAD RSTUDIO DESKTOP FOR WINDOWS → RStudio
Desktop → DOWNLOAD RSTUDIO → DOWNLOAD RSTUDIO DESKTOP FOR WINDOWS
4.Rtoos安装(R包安装需要)
https://cran.r-project.org/bin/windows/Rtools/rtools43/rtools.html
→Rtools43 installer
5.基本操作
查看当前工作目录 :getwd()
设置工作目录 :setwd(dir = "路径")
注意:Rwindow语言路径使用’\’ 而R语言使用’/'
查看工作目录下的文件:list.files() 或者 dir()
查看帮助文档 :help.start();
函数详情 help(sum)
查看函数参数 args(函数名)
查看包帮助文档: help(package=包名vig)
> getwd()
[1] "C:/Users/xiaob/Desktop"
> setwd(dir = "C:/Users/xiaob/Desktop/Rwork")
> getwd()
[1] "C:/Users/xiaob/Desktop/Rwork"
> list.files()
character(0)
> dir()
character(0)
赋值符号 ‘<-’ (等号可以不推荐)
赋值给全局变量 ‘<<-’
> x<-2
> x
[1] 2
> x<<-5
> x
[1] 5
> z <- sum(1,2,3,4,5)
> z
[1] 15
> t <- min(1,2,3,4,5)
> t
[1] 1> ls() #查看所有变量
[1] "t" "x" "y" "z"
> ls.str() #查看所有变量和变量值
t : num 1
x : num 5
y : num 4
z : num 15
> str(x)num 5
> rm(x) #删除变量
> x
Error: object 'x' not found
> rm(t,y,z) #删除多个变量
> z
Error: object 'z' not found> x<-2
> y<-4
> z<-8
> ls()
[1] "x" "y" "z"
> rm(list = ls()) #删除当前所有变量
> ls()
character(0)上下移动光标选择命令
> history() #查看历史命令
> history(5) #查看最近5条命令
清除命令窗口:ctrl + L
注释:#
保存工作空间:> save.image()
退出R: >q()
6.R包
(一)安装
查看包:https://cran.r-project.org/web/views/
1.在线安装
安装包:>install.packages()
#需要选择镜像站点
安装指定包 :>install.packages("包名")
会自动安装依赖包
查看所有本地包安装路径:>libPaths()
查看所有已安装包列表:>library()
手动更改镜像:Tools → Global option → Packages
2.GitHub安装
GitHub搜索包名
> install.packages("devtools")
> install.packages("remotes")
> devtools::install_github("仓库名/包名")
3.本地安装
github仓库先下载压缩包
> devtools::install_local("绝对路径")
#注意改反斜杠
(二)使用
载入包: library(包名) 或者 require(包名)
查看包帮助文档 >help(package="包名")
查看包基本信息 >library(help="包名")
输入包内索引名可以直接查看数据集(注意需要先载入)
library(vcd)
library(help="vcd")
查看包内函数: ls("package:包名")
查看包内所有数据集 data(package="包名")
移除加载包: detach("package:包名")
查看当前已安装R包 installed.packages()
7.内置数据集
查看内置全部数据集 >help(package="datasets")
简略查看全部数据集 >data()
访问数据集:输入数据集名称
查看某个数据集详细信息:help("数据集名称")
8.数据结构
数据类型:
9.向量(集合)
1.基本操作
创建:>c(元素1,元素2,.....)
>x <- c(1,2,3,4)
>x
[1] 1 2 3 4#逻辑型向量必须大写
> z <- c(TRUE,T,F)
> z
[1] TRUE TRUE FALSE
> z <- c(True,T,F)
Error: object 'True' not found> c(1:20) #生成1到20的等差数列[1] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
[19] 19 20> seq(from=1,to=100,by=2) #生成步长为2的等差数列[1] 1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35
[19] 37 39 41 43 45 47 49 51 53 55 57 59 61 63 65 67 69 71
[37] 73 75 77 79 81 83 85 87 89 91 93 95 97 99> seq(from=1,to=100,length.out=10) #生成十个值的等差数列[1] 1 12 23 34 45 56 67 78 89 100#向量化编程,批量计算
> x <- c(1,2,3,4,5)
> y <- c(6,7,8,9,10)
> x*2+y
[1] 8 11 14 17 20> x[x>3] #取出x中大于3的值
[1] 4 5
2.向量索引
R索引从1开始
> x <- c(1:10) #生成1到10的等差数列
> x[1] 1 2 3 4 5 6 7 8 9 10
> length(x) #集合长度
[1] 10
> x[3]
[1] 3
> x[-9] #不输出第9个元素
[1] 1 2 3 4 5 6 7 8 10> x[c(2:6)] #输出第2到第6个元素
[1] 2 3 4 5 6
> x[c(2,4,6)] #输出2,4,6元素
[1] 2 4 6> y <- c(1:5)
> y[c(T,F,T,T,F)] #只输出逻辑为真的值
[1] 1 3 4> y[y>2&y<5]
[1] 3 4> v <- c(1:3)
> v
[1] 1 2 3
> v[c(4,5,6)] <- c(4,5,6)
> v
[1] 1 2 3 4 5 6
> v[20] <- 4
> v[1] 1 2 3 4 5 6 NA NA NA NA NA NA NA NA NA NA NA NA NA 4
插入向量
> v <- c(1:5)
> v
[1] 1 2 3 4 5
> append(x = v,values = 99,after = 2) #在第二个元素后面插入99
[1] 1 2 99 3 4 5
rm(v) #删除整个向量
3.向量运算
> x <- 1:10
> x[1] 1 2 3 4 5 6 7 8 9 10
> x+1[1] 2 3 4 5 6 7 8 9 10 11
> x-3[1] -2 -1 0 1 2 3 4 5 6 7
> x <- x+1
> x[1] 2 3 4 5 6 7 8 9 10 11
> y <- seq(1,100,length.out = 10) #生成长度为10的等差数列
> y[1] 1 12 23 34 45 56 67 78 89 100
> x + y[1] 3 15 27 39 51 63 75 87 99 111
> x[1] 2 3 4 5 6 7 8 9 10 11
> y[1] 1 12 23 34 45 56 67 78 89 100
> x**y #x的y次幂[1] 2.000000e+00 5.314410e+05 7.036874e+13[4] 5.820766e+23 1.039456e+35 2.115876e+47[7] 3.213876e+60 2.697216e+74 1.000000e+89
[10] 1.378061e+104
> y%%x #取余运算[1] 1 0 3 4 3 0 3 6 9 1
> y%/%x #整除运算[1] 0 4 5 6 7 8 8 8 8 9#判断是否元素包含
> c(1,2,3) %in% c(1,2,2,4,5,6)
[1] TRUE TRUE FALSE
函数
> x <- -5:5
> x[1] -5 -4 -3 -2 -1 0 1 2 3 4 5
> abs(x) #绝对值[1] 5 4 3 2 1 0 1 2 3 4 5
> sqrt(x) #开根号[1] NaN NaN NaN NaN NaN 0.000000 1.000000 1.414214 1.732051 2.000000
[11] 2.236068
Warning message:
In sqrt(x) : NaNs produced
> sqrt(25) #开根号
[1] 5
> log(16,base=2) #2为底 16的对数
[1] 4
> log(16) #自然对数
[1] 2.772589> exp(x) #e的x次方[1] 6.737947e-03 1.831564e-02 4.978707e-02 1.353353e-01 3.678794e-01 1.000000e+00 2.718282e+00 7.389056e+00 2.008554e+01 5.459815e+01 1.484132e+02#ceiling(a) 返回不小于a的最小整数
> ceiling(c(-2.3,3.1415))
[1] -2 4#floor(x) 返回不大于x的最大整数
> floor(c(-2.3,3.1415))
[1] -3 3#trunc(x) 返回整数部分
> trunc(c(-2.3,3.1415))
[1] -2 3#roud(x,digits=保留小数位数) 对x四舍五入
> round(c(-2.3,3.1415))
[1] -2 3
> round(c(-2.3,3.1415),digits = 2)
[1] -2.30 3.14
#signif(x,digits=保留小数位数) 对x四舍五入 仅保留有效数字
> signif(c(-2.3,3.1415),digits=2)
[1] -2.3 3.1
> sin(x)[1] 0.9589243 0.7568025 -0.1411200 -0.9092974 -0.8414710 0.0000000 0.8414710 0.9092974[9] 0.1411200 -0.7568025 -0.9589243
> cos(x)[1] 0.2836622 -0.6536436 -0.9899925 -0.4161468 0.5403023 1.0000000 0.5403023 -0.4161468[9] -0.9899925 -0.6536436 0.2836622> vec <- 1:10
> vec[1] 1 2 3 4 5 6 7 8 9 10
> sum(vec)
[1] 55
> max(vec)
[1] 10
> min(vec)
[1] 1
> range(vec) #返回最大值最小值
[1] 1 10
> var(vec) #返回向量的方差
[1] 9.166667
相关文章:

R语言学习笔记
1.R语言介绍 2.R语言安装 官网:https://www.r-project.org/ CARN → 选择China中任意镜像站点 → Download R for Windows → base(二进制版本R基础软件)→ Download R-4.2.2 for Windows (76 megabytes, 64 bit) 3.Rstudio安装 https://po…...

【软件测试】企业测试面试题9道,从自我介绍到项目考察+回答......
目录:导读前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜)前言 1、自我介绍 您好&a…...

《Spring源码深度分析》第8章 数据库连接JDBC
目录标题前言一、数据库连接方式1.JDBC连接数据库2.Spring Jdbc连接数据库(JdbcTemplate)二、JdbcTemplate源码分析1.update/save功能的实现源码分析入口(关键)基础方法execute1.获取数据库连接池2.应用用户设定的输入参数3. 调用回调函数处理4. 资源释放Update中的回调函数2.q…...
ModuleNotFoundError的解决方案【已解决】
问题描述 有包却提示ModuleNotFoundError 在正常情况下,你使用pip或者conda检查是否有相应包的时候,显示的是有的。但是一旦运行程序就会报这个ModuleNotFoundError错误。 问题可能是程序运行环境不对。 解决方案 (1)进入正确…...

Vue驼峰与短横线分割命名中有哪些坑
目录 0.前言 驼峰和短横线分割命名注意事项 组件注册命名 父子组件数据传递时命名 父子组件函数传递 0.前言 Vue驼峰命名法指的是将变量以驼峰形式命名,例如 userName、userId 等,而短横线分隔符法则指的是用短横线分隔变量名,例如 user…...
从文件中加载数据以及异常处理
上期学习了数据的存储,这次学习数据的加载 你可以使用把openpyxl.load_workbook() 来打开一个已经存在的工作簿 >>> from openpyxl import load_workbook >>> wb load_workbook(filename empty_book.xlsx) >>> sheet_ranges wb[ran…...

【JavaSE】方法的使用
方法的使用BIT-5-方法的使用绪论1. 方法概念及使用1.1什么是方法1.2 方法定义1.3 实参和形参的关系(重要)1.4 没有返回值的方法2. 方法重载2.1 为什么需要方法重载2.2 方法重载概念3. 递归3.1 生活中的故事3.2 递归的概念3.2 递归执行过程分析3.3 递归练…...

ModelScope 垂类检测系列模型介绍
文章目录ModelScope介绍垂类模型介绍调用方式1 Demo Service2 Notebook3 本地使用* 二次开发总结ModelScope介绍 ModelScope 是阿里达摩院推出的 中文版模型即服务(MaaS, Model as a Service)共享平台。该平台在2022年的云栖大会上发布,之前…...

Linux | Linux卸载和安装MySQL(Ubuntu版)
最近又来到了Linux学习了,原因是要接触云服务器相关知识, 所以博主整理了一些关于Linux的知识, 欢迎各位朋友点赞收藏,天天开心丫,快乐写代码! Linux系列文章请戳 Linux教程专栏 目录 一、卸载MySQL 1…...

【C1】数据类型,常量变量,输入输出,运算符,if/switch/循环,/数组,指针,/结构体,文件操作,/编译预处理,gdb,makefile,线程
文章目录1.数据类型:单双引号,char(1B),int/float(32位系统,大小一样4B,但存储方式不同),double(8B),long double…...
【深度学习】pytorch的基础操作
import torch import numpy as np # 1.1 根据已有的数据创建张量 def test01(): # 1.1 创建标量 data torch.tensor(10) print(data) # 1.2 使用numpy数组来创建张量 data np.random.randn(2,3) data torch.tensor(data) print(data) # 1.3使用list…...

MWORKS--同元软控MWORKS介绍、安装与使用
MWORKS--同元软控MWORKS介绍、安装与使用1 同元软控介绍1.1 同元软控简介1.2 同元软控发展历史2 MWORKS介绍2.1 MWORKS简介2.2 MWORKS产品描述3 装备数字化3.1 发展3.2 内涵3.3 系统模型发展成为产品的一部分3.4 MWORKS系统模型数据管理3.4 MWORKS为装备数字化提供的套件4 下载…...

Python 解决dilb和face_recognition第三方包安装失败
目录 dilb和face_recognition第三方包安装失败 亲测有效的解决方法:whl安装方式 dilb和face_recognition第三方包安装失败 场景复现:因为需要用到dlibface_recognition,基于OpenCV做一些人脸识别的项目,在Pycharm中进行pip清华…...

Mac系统Mysql的8.0.22版本安装笔记和密码重置修改密码等问题方法
忘记密码官网教程地址:https://dev.mysql.com/doc/refman/5.7/en/resetting-permissions.html 5.7数据库安装指南参考:https://jingyan.baidu.com/article/fa4125ac0e3c2928ac709204.html 初次安装8.0.22遇到许多坑,密码修改失败;…...

驱动 | Linux | NVMe 不完全总结
本文主要参考这里 1’ 2 的解析和 linux 源码 3。 此处推荐一个可以便捷查看 linux 源码的网站 bootlin 4。 更新:2022 / 02 / 11 驱动 | Linux | NVMe 不完全总结NVMe 的前世今生从系统角度看 NVMe 驱动NVMe CommandPCI 总线从架构角度看 NVMe 驱动NVMe 驱动的文件…...

一个测试人员,在现阶段的环境下如何在测试行业发展和自我价值。
前言周末和几个测试圈子里的大佬饭局上聊了一些职场和测试职业发展相关的话题,我将聊天的内容做了整理和阐述。。朋友圈有测试同学对这篇文章提了比较深刻的建议,下面是他的评价和建议:评价:据说是大佬饭桌总结,有两点…...

pwn手记录题2
fastbin_reverse_into_tcache(2.34) 本题所使用的libc版本为2.34;(最新版 libc2.34版本已经没有了所谓的hook函数,甚至exit_hook(实际为某个函数指针)也已经不能够使用;能够利用的手法已经很少了; 高版本glibc堆的几…...

CSS ~ 从入门到入坑。
CSS ~ 从入门到入坑。 文章目录CSS ~ 从入门到入坑。what。css 三种实现方式。选择器。id 选择器 > class 选择器 > 标签选择器。标签选择器。类选择器。id 选择器。层次选择器。后代选择器。子选择器。相邻兄弟选择器。通用选择器。结构伪类选择器。属性选择器。字体风格…...

成都哪家机构的Java培训比较好,求一个不坑的?
关于这个问题,相信你会得到很多条答案,以及很多家机构的自荐。既然如此,不如也了解一下老牌IT职业教育机构:有足够丰富的教学经验,丰富的教学产品资源以及成熟的就业保障体系,还有就是承担风险的能力。 很…...

《爆肝整理》保姆级系列教程python接口自动化(十二)--https请求(SSL)(详解)
简介 本来最新的requests库V2.13.0是支持https请求的,但是一般写脚本时候,我们会用抓包工具fiddler,这时候会 报:requests.exceptions.SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:590) 小编…...
【Linux】C语言执行shell指令
在C语言中执行Shell指令 在C语言中,有几种方法可以执行Shell指令: 1. 使用system()函数 这是最简单的方法,包含在stdlib.h头文件中: #include <stdlib.h>int main() {system("ls -l"); // 执行ls -l命令retu…...

Python实现prophet 理论及参数优化
文章目录 Prophet理论及模型参数介绍Python代码完整实现prophet 添加外部数据进行模型优化 之前初步学习prophet的时候,写过一篇简单实现,后期随着对该模型的深入研究,本次记录涉及到prophet 的公式以及参数调优,从公式可以更直观…...
【git】把本地更改提交远程新分支feature_g
创建并切换新分支 git checkout -b feature_g 添加并提交更改 git add . git commit -m “实现图片上传功能” 推送到远程 git push -u origin feature_g...

《基于Apache Flink的流处理》笔记
思维导图 1-3 章 4-7章 8-11 章 参考资料 源码: https://github.com/streaming-with-flink 博客 https://flink.apache.org/bloghttps://www.ververica.com/blog 聚会及会议 https://flink-forward.orghttps://www.meetup.com/topics/apache-flink https://n…...

用docker来安装部署freeswitch记录
今天刚才测试一个callcenter的项目,所以尝试安装freeswitch 1、使用轩辕镜像 - 中国开发者首选的专业 Docker 镜像加速服务平台 编辑下面/etc/docker/daemon.json文件为 {"registry-mirrors": ["https://docker.xuanyuan.me"] }同时可以进入轩…...

华为OD机试-最短木板长度-二分法(A卷,100分)
此题是一个最大化最小值的典型例题, 因为搜索范围是有界的,上界最大木板长度补充的全部木料长度,下界最小木板长度; 即left0,right10^6; 我们可以设置一个候选值x(mid),将木板的长度全部都补充到x,如果成功…...
Kafka主题运维全指南:从基础配置到故障处理
#作者:张桐瑞 文章目录 主题日常管理1. 修改主题分区。2. 修改主题级别参数。3. 变更副本数。4. 修改主题限速。5.主题分区迁移。6. 常见主题错误处理常见错误1:主题删除失败。常见错误2:__consumer_offsets占用太多的磁盘。 主题日常管理 …...
git: early EOF
macOS报错: Initialized empty Git repository in /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core/.git/ remote: Enumerating objects: 2691797, done. remote: Counting objects: 100% (1760/1760), done. remote: Compressing objects: 100% (636/636…...

Xela矩阵三轴触觉传感器的工作原理解析与应用场景
Xela矩阵三轴触觉传感器通过先进技术模拟人类触觉感知,帮助设备实现精确的力测量与位移监测。其核心功能基于磁性三维力测量与空间位移测量,能够捕捉多维触觉信息。该传感器的设计不仅提升了触觉感知的精度,还为机器人、医疗设备和制造业的智…...

ubuntu系统文件误删(/lib/x86_64-linux-gnu/libc.so.6)修复方案 [成功解决]
报错信息:libc.so.6: cannot open shared object file: No such file or directory: #ls, ln, sudo...命令都不能用 error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory重启后报错信息&…...