R语言——基本操作(一)

目录

一、基本操作

二、R包的安装及使用

三、获取帮助

四、内置数据集

五、数据结构

六、向量索引

七、向量运算

参考


Rstudio 控制台常用快捷键

Ctrl + ↑ :查看所有历史记录,比直接使用 ↑ 查找更方便

Esc:中断操作,可中断未完成的操作(未完成回车后是 + ),也可以清空命令。

Ctrl + L :清空屏幕

Alt + Shift + K:显示R studio中所有的快捷操作

一、基本操作

getwd():显示当前工作目录

setwd('E:/R')  : 修改当前工作目录地址,注意,此处要使用正斜线

list.files() 和 dir() :查看目录下包含的文件

x <- 3:表示 x=3

x <<- 5 :强制赋值给一个全局变量

sum(1,2,3,4,5) : 求和得15

mean(c(1,2,3,4,5)) or mean(c(1:5)):求均值得3,mean(1,2,3,4,5)得到的是1 ,因为mean()是对第一个参数求均值

ls:列出当前工作空间中定义的所有变量

str(x):列出变量x的详细信息

ls.str():列出当前工作空间中所有变量的详细信息(如值等)

ls(all.name = TRUE):ls() 函数不能列出工作目录下的隐藏文件,添加“all.name=TRUE”就可以显示

rm(x):删除工作空间中不需要的对象,也可以删除多个,用逗号隔开,删除后无法恢复

rm (list=ls()):删除工作空间中所有的对象

history():列出历史记录,history(10) 列出最近的十条历史记录

save.image():保存工作空间,避免软件异常退出,只会保留数据及绘图函数等。

二、R包的安装及使用

在线安装:

install.packages(" R 包名 ") : 注意:安装包,包名要用引号引起来

.libPaths() :显示库所在的地址

library() :显示库中所有的安装包

library(包名) 或 require(包名):载入R包,这里的包名不需要用引号

R基础包在启动R时就会被加载进来:base、datasets、utils、grDevices、graphics、stats、methods、splines、stats4和tcltk。

R包的使用:

help(package=“包名”):列出这个包的帮助文档

library(help="包名):列出包的基础信息

ls("package:包名"):列出R包中所有的函数

data(package="包名"):列出R包中包含的所有数据集

detach("package: 包名"):移除加载的包,非删除,可重新使用require或library加载

remove.package("包名"):删除已安装的包

R包的批量移植,在新设备上克隆R包:

installed.packages():列出当前环境中已安装的R包的所有信息

installed.packages()[,1]:获取到当前环境中已安装的包名

Rpack <- installed.packages()[,1]:将所有R的名字保存到一个文件中

save(Rpack, file="Rpack.Rdata"):保存

load("Rpack.Rdata"):在新设备上加载

for (i in Rpack) install.packages():批量安装这些包

三、获取帮助

help.start():获取R的帮助信息

help(函数名) 或 ?函数名:列出某函数的帮助信息,需加载包后再help

??函数名:不需要加载包就可以获取帮助信息

args(函数名):直接在终端中输出函数的参数,快速了解函数的参数而不想查阅详细的文档

example(函数名):获取函数的使用示例

example("hist"):也可以列出绘图示例

demo(graphics):绘图的案例

help(package=包名):查看R安装的某个包的帮助文档

help.search("heatmap"):不知道具体的函数名,模糊查询heatmap相关函数

apropos("sum", mod="function"):列出所有包含sum关键字的函数

RSiteSearch("matlab"):进行网络搜索,使用默认浏览器访问官网,help.search 和 ?? 都只能进行本地的搜索

四、内置数据集

help(package="datasets"):查看包中的所有数据集详细信息,数据集存储于datasets这个包中,打开R时默认已加载

data():列出所有的数据集

数据集名:直接输入数据集的名字就可以使用这些数据集,如rivers

revers <- c(1,2,3):选取前三条数据

data("rivers"):重新加载数据集,这里带引号

help("数据集名"):可直接查询某一数据集的详细信息

names(数据集名):输出向量的属性名(columns)

state <- data.frame(state.abb, state.area, state.name):将多条数据构成一个数据框

五、数据结构

数值型:数值可以用于直接计算,加减乘除

字符串型:可以进行连接, 转换,提取等

逻辑型:真或假

日期型等

向量是用于存储数值型、字符型或逻辑型数据的一维数组。

x <- c(1,2,3,4):用函数 c 来创建向量,c 代表 concatenate 连接 ,也可以理解为collect, 或者合并combine。

元素为字符型要加引号

元素为逻辑型要全部大写,或大写简写,但不可首字母大写

用 “ :”构建等差数列

使用seq() 函数中的 by 调整等差差值

seq() 函数中的 length.out 控制输出的个数

rep(重复元素,重复次数) 函数生成重复序列

重复元素可以是变量

可是用 each 设置重复方式

each 和 times 同时出现则重复次数为二者的乘积

 rep()函数中的 c(1,4,2,3) 用来控制 a 中每个元素重复的次数

向量中的元素必须是同一类型

数值型和字符串型一起定义时,数值型会被转化为字符串型,用mode(向量名)可以查看向量的类型。

向量运算 a × 2 + b

从a中取出大于3的值

rep()函数中的 c(1,4,2,3) 用来控制 a 中每个元素重复的次数

六、向量索引

正(负)整数索引

逻辑向量索引

名称索引

正负数索引 

length(x) :计算向量的长度

x[3]:获取向量第三个元素,索引从 1 开始,x[0] 什么都不会输出

负整数索引:访问除了这个元素的其他元素

eg:不输出 2 这个元素

x[c(4:12)]:输出第 4 个到第 12 个元素

x[c(1,3,5,6)]:输出对应索引位置的元素

索引里不能既有正数,又有负数

逻辑向量索引 

使用逻辑向量进行向量的索引

输出对应位置为 TRUE的元素

只写一个 T 或 F 则所有元素判断为TRUE 或 FALSE

只有几个 T 或 F 则使用这些条件重复判断

多出一个判断条件,则显示 NA

也可用条件表达式输出符合条件的元素

%in% :判断是否在,在则为TURE

判断z中的每个元素是否在c("one","two")中,在则为TURE,打印z中在c("one","two")中的元素。

名称索引

为向量添加属性名

然后就可以通过属性名访问元素

向量的增删改查 

在向量末尾添加元素

批量添加元素

在最后一个元素后的任意位置添加元素,中间没有元素的位置会置 NA

在向量中间添加元素

append(向量名,添加的值,添加在哪个位置后)

after为0则表示在向量头部添加元素

rm(向量名):删除整个向量

删除向量中的某个元素,采用负整数索引

删除向量中的前两个元素

取出除前两个元素之外的其他元素,再存入新的向量中

修改向量中某个元素的值

若给数值型向量赋值一个字符串类型,则向量变为字符串型向量

七、向量运算

向量的加减乘除操作是对向量的每个元素进行计算

向量之间的运算,对应元素运算

幂运算 **,取余运算 %%,整除运算 %/%

如果两个向量长度不一致,则长的向量要是短的向量元素个数的倍数,短向量被重复计算

逻辑运算 

>, <, =, %in%等,返回 布尔值

x==y:比较两个对象是否相等,用两个等号

函数

abs(x):计算绝对值

sqrt(x):计算平方根

log(x,base=):x为要求的值,base为底数,不加base等同于ln ,以10为底可以写为log10

exp(x):计算向量中每个元素的指数

ceiling(x):不小于x的最小整数

floor(x):不大于x的最大整数

trunc(x):返回整数部分

round(x, digits):四舍五入,digits保留几位小数

sinif(x, digits):四舍五入,digits保留有效数字的位数

sum(vector):sum 求和,vector表示向量

max(vector):求最大值

min(vector):求最小值

range(vector):返回向量的最大值和最小值

mean(vector):求均值

var(vector):求方差

prod(vector):连乘

参考

R语言入门与数据分析

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

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

相关文章

【网络安全】-Linux操作系统—VMWare软件

文章目录 VMWare软件的安装选择VMWare版本下载VMWare安装过程 VMWare的常用操作创建新的虚拟机配置虚拟机启动和关闭虚拟机安装VMWare Tools VMWare的克隆和快照克隆&#xff08;Clone&#xff09;快照&#xff08;Snapshot&#xff09; 总结 VMWare是一种流行的虚拟化软件&…

【C语言】操作符详解(四):结构成员访问操作符

目录 结构成员访问操作符 结构体 结构体的声明 结构体变量的定义和初始化 结构成员访问操作符 结构体成员的直接访问 结构体成员的间接访问 结构成员访问操作符 结构体 ⭐C语言已经提供了内置类型&#xff0c;如: char、short、int、long、float、double等&#xff0c;但…

Java刷题篇——单链表练习题上

206. 反转链表 - 力扣&#xff08;LeetCode&#xff09; 1. 题目描述 给你单链表的头节点 head &#xff0c;请你反转链表&#xff0c;并返回反转后的链表。 示例1 输入&#xff1a;head [1,2,3,4,5] 输出&#xff1a;[5,4,3,2,1] 示例2 输入&#xff1a;head [1,2] 输出&…

零经验外贸SOHO怎么做?海洋建站的教程?

如何从零开始做外贸SOHO&#xff1f;新人小白做外贸网站的技巧&#xff1f; 零经验外贸SOHO&#xff0c;似乎是一条充满未知和挑战的道路。对于没有外贸经验的人来说&#xff0c;想要进入外贸行业确实比较困难。但是&#xff0c;只要你有决心和努力&#xff0c;零经验也可以做…

直播种类之语音直播

语音直播是一种通过语音传输的直播形式&#xff0c;用户可以通过语音与主播或其他观众进行实时交流和互动。 在语音直播中&#xff0c;主播可以通过语音聊天、唱歌、讲故事等多种形式与观众进行互动。观众也可以通过语音连麦等方式与主播进行实时交流。 相对于视频直播&#…

[原创][R语言]股票分析实战[2]:周级别涨幅趋势的相关性

[简介] 常用网名: 猪头三 出生日期: 1981.XX.XX QQ联系: 643439947 个人网站: 80x86汇编小站 https://www.x86asm.org 编程生涯: 2001年~至今[共22年] 职业生涯: 20年 开发语言: C/C、80x86ASM、PHP、Perl、Objective-C、Object Pascal、C#、Python 开发工具: Visual Studio、D…

JavaOOP篇----第三篇

系列文章目录 文章目录 系列文章目录前言一、标识符的命名规则二、instanceof关键字的作用三、什么是隐式转换&#xff0c;什么是显式转换 前言 前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到…

Spring Boot 3 + Vue 3 整合 WebSocket (STOMP协议) 实现广播和点对点实时消息

&#x1f680; 作者主页&#xff1a; 有来技术 &#x1f525; 开源项目&#xff1a; youlai-mall &#x1f343; vue3-element-admin &#x1f343; youlai-boot &#x1f33a; 仓库主页&#xff1a; Gitee &#x1f4ab; Github &#x1f4ab; GitCode &#x1f496; 欢迎点赞…

【Java】基于fabric8io库操作k8s集群实战(pod、deployment、service、volume)

目录 前言一、基于fabric8io操作pod1.1 yaml创建pod1.2 fabric8io创建pod案例 二、基于fabric8io创建Service&#xff08;含Deployment&#xff09;2.1 yaml创建Service和Deployment2.2 fabric8io创建service案例 三、基于fabric8io操作Volume3.1 yaml配置挂载存储卷3.2 基于fa…

Java SM2 国密算法(最权威)!

国密SM2算法简介 国密SM2算法是一种椭圆曲线公钥密码算法&#xff0c;其安全性基于椭圆曲线离散对数难题。该算法由国家密码管理局设计并公开&#xff0c;用于国家关键信息系统的数据加密、解密和数字签名等操作&#xff0c;是我国自主创新的一种密码算法。 一、SM2算法概述…

通话状态监听-Android13

通话状态监听-Android13 1、Android Telephony 模块结构2、监听和广播获取通话状态2.1 注册2.2 通话状态通知2.3 通话状态 3、通知状态流程* 关键日志 frameworks/base/core/java/android/telephony/PhoneStateListener.java 1、Android Telephony 模块结构 Android Telephony…

开发电子商务网站/APP如何对接淘宝/天猫商品详情的API接口来丰富自建商城的产品展示

随着电子商务的快速发展&#xff0c;越来越多的企业开始意识到建立电子商务网站的重要性。下面我们将从产品、营销和客户服务三个方面来探讨电子商务网站的构建与运营策略。 1产品分析 在构建电子商务网站时&#xff0c;首先要对产品进行深入的分析。要明确产品的特点、优势和…