R笔记整理(持续更新中)
1. 安装R包
install.packages("ggplot2") #注意留意在包的名称外有引号!!!
library(ggplot2) #在加载包的时候,则不需要在包的名称外添加引号~
2. 获取帮助
?mean #查找某个函数
?"+" #对于特殊符号,应该用引号括起来
??mean #查找关键词
??"+"
help("mean")
help("+")
help.search("mean")
help.search("+")
apropos("mean") #模糊搜索,正则表达式
help.start()
example(plot)
demo()#列出所有演示
demo(graphics)
browseVignettes() #List available vignettes in an HTML browser with links to PDF, LaTeX/noweb source, and (tangled) R code (if available).
vignette(package="ggplot2") #查看ggplot2有哪些文档
vignette("Sweave",package="utils") #查看utils包中,Sweave的文档
data() #Loads specified data sets, or list the available data sets
RsiteSearch("mean")
3. R的更新
windows
卸载后去官网重新下载(但原先装的R包会丢失)
Rstudio中重装
install.packages("installr")
library(installr)
updateR()
linux
yum install R
4. 基本数学运算
x+y #加
x-y #减
x*y #乘
x/y #除
x^y #x**y #乘幂
x%%y #取余
x%/%y #整除
exp(1) #指数运算
log(1) #对数
log10(1e3)
log(3^4,base=3) #log3(4)
log1p(3) #computes log(1+x) accurately also for |x| << 1
expm1(3) #computes exp(x) - 1 accurately also for |x| << 1
sqrt(2^2) #平方根 square root
abs(-3) #绝对值
sin(2) #三角函数
cos(2)
tan(2)
min(1:4) #得到的是最小值
max(1:4) #得到的是最大值
which.min(c(1,2,3,4,5)) #得到的是最小值的下标
which.max(c(1,2,3,4,5)) #得到的是最大值的下标
pmin(c(1,2,3,4),c(4,3,2,1)) #得到 1 2 2 1 ,pmin()求的是对应位置的最小值,即1和4比,2和3比,3和2比,4和1比
pmax(c(1,2,3,4),c(4,3,2,1)) #得到 4 3 3 4
round(2.3) #四舍五入
floor(2.3) #向下取整
ceiling(2.3) #向上取整
trunc(2.3) #向0取整
signif(2.3,digits=1) #保留给定位数的精度
sum(1:4)
prod(1:4)
cumsum(1:4) #累加
cumprod(1:4) #累乘
factorial(4) #阶乘 4!=4*3*2*1
choose(5,0:5) #二项式 c(n,k)
mean()
sd() #标准差
var() #方差
5. 向量和矩阵的线性代数运算
crossprod() #向量内积/点积
%*% #向量外积
solve() #解线性方程和求逆
t() #矩阵转置
qr() #QR分解
chol() #cholesky分解
det() #矩阵行列式值
eigen() #矩阵特征值和特征向量
diag() #提取方阵中的对角元素/根据输入值返回单位矩阵
sweep(matrix(1:6,ncol=1),1,c(1,2,3),"+") #批量运算 matrix矩阵,按行(1)计算(列是2),第一行加1,第2行加2,第3行加3
6. 数据类型
-数值型
-复数型
-日期
-逻辑型
-字符型
-原型
mode(x) #查看x的数据类型
#is语句 判断,返回TRUE/FALSE
is.numeric(x) #日期也是numeric()类型
is.complex(x)
is.logical(x)
is.character(x)
is.raw(x)
#as语句 其实也是有条件的,不是你想转型就能转型的!!!
# > as.numeric("IT DOESN'T WORK!")
# [1] NA
#logical的T和F,对应的数值是1和0
as.numeric(x)
as.complex(x)
as.logical(x)
as.character(x)
as.raw(x)
数值型
实数(整数、小数、科学计数型)
复数型
日期
逻辑型
有3个(注意,都是大写!!!不要误写成True/False)
-TRUE
-FALSE
-NA(not available)
字符型
原型
7. 数据结构
-向量
-矩阵
-数组
-数据框
-列表
-因子
R笔记整理(持续更新中)的更多相关文章
- java视频教程 Java自学视频整理(持续更新中...)
视频教程,马士兵java视频教程,java视频 1.Java基础视频 <张孝祥JAVA视频教程>完整版[RMVB](东西网) 历经5年锤炼(史上最适合初学者入门的Java基础视频)(传智播 ...
- docker学习资料整理(持续更新中..)
docker最近可以说火得一踏糊涂,跟 51大神在交流技术的时候这个东西会多次被提到,当我们还玩vm+linux/freebsd的时候,人家已经上升到更高层次了,这就是差距,感觉好高大上的样子,技术之 ...
- oracle数据库自学笔记(持续更新中……)
以前的项目都是使用mysql数据库开发的,如今进了新的公司,开始接触到了Oracle数据库,而自己以前没有接触过,就自己挤时间来学习一下. 一.关系型数据库的概念 关系型数据理论由E.F.Codd博士 ...
- Oracle 9i & 10g编程艺术-深入数据库体系结构-学习笔记(持续更新中)
--20170322 --1.0 --更新表的统计信息begin dbms_stats.set_table_stats(user,'EMP',numrows => 10000);end; beg ...
- HTML5学习笔记(持续更新中....)
平时的工作中,不知不觉我们应用了很多HTML5,但当正儿八经问起来你对HTML5了解多少,很多时候都有点懵. 做个简单的HTML5总结.包括简介.要学的知识点.凌乱的知识点 HMTL5简介 定义:ht ...
- Canvas 笔记(持续更新中)
1.从线条开始 HTML <canvas id="canvas"></canvas> Javascript var canvas=document.getE ...
- 《EM-PLANT仿真技术教程》读书笔记(持续更新中)
1.在系统分析过程中,必须考虑系统所处的环境,因此划分系统与环境的边界是系统分析的首要任务 2.模型可以分为物理模型和数学模型.数学模型可以分为解析模型.逻辑模型.网络模型以及仿真模型.模型可以分为离 ...
- 剑指Offer读书笔记(持续更新中)
(1)定义一个空的类型,里面没有不论什么成员变量和成员函数,对该类型求sizeof,得到的结果是多少? 答案是1.空类型的实例中不包括不论什么信息,本来求sizeof应该是0,可是当我们声明该类型实例 ...
- 我的 CSDN 博客目录索引(主要记录了我学习视频、书籍的笔记,持续更新中)
我的 CSDN 博客地址: lw_power的专栏 - 博客频道 - CSDN.NEThttp://blog.csdn.net/lw_power 佟刚老师<Spring4视频教程>学习笔记 ...
- Gradle项目构建工具学习笔记(持续更新中。。。)
1.gradle的安装 1)从官网下载gradle,然后解压 2)在系统环境变量新建GRADLE_HOME 3)将%GRADLE_HOME%\bin加入PATH中 2.验证是否安装成功 gradle ...
随机推荐
- 【ARM-Linux开发】ARM嵌入式设备Linux系统启动步骤和方式
1). 简介 本文简单介绍ARM嵌入式设备基于嵌入式Linux操作系统时候的启动步骤和启动方式, 区别与X86平台,ARM平台下并没有一个标准的启动步骤,不同ARM SoC都会使用各自定义的boot ...
- IDEA和JIRA任务联动(redmine同理)
IDEA和JIRA任务联动-操作流程详解 redmine和这个步骤类似,只是第一步选择的工具不一样 操作流程 添加jira配置,File->Setting-->tools-->Tas ...
- 90% 前端开发者都不知道的 JavaScript 实用小技巧
面试神器之数组去重 const a = [...new Set([1, 2, 3, 3])] >> [1, 2, 3] 操作数组担心 falsy 值? const res = myArra ...
- 分布式session一致性
实现思路:当客户端发送请求到服务端后,在后台生成一个token,将token作为key,用户状态信息作为value,存入redis缓存中,并设置过期时间,最后把token返回给客户端 客户端第会保存t ...
- [Linux] - Manjaro ARM 系统配置(更新镜像源,安装 Docker 和 Dotnet Core)
硬件:Raspberry Pi 4B系统:Manjaro-ARM-xfce-rpi4-19.08网址:https://manjaro.org/ Issue系统启动后,中文字符显示为小方格乱码 解决:安 ...
- Word 图片表格自动编号、交叉引用、批量更改图片标题格式、生成图录和表录
1. 前言 论文往往里往往需要插入很多图片,下放需要标上 图a-b,其中 a 是章节号码,b是该章节中第几张图.比如第一章第二副图就是 图1-2.但是有个问题,每次我们插入了一张图或删掉了一张,前后的 ...
- 使用StringBuilder构建字符串
使用StringBuilder构建字符串确实可以提高效率,比“+”要高效不少.但使用时也有一些坑: 首先,我们指定一个StringBuilder,并设置其长度. StringBuilder build ...
- yum -y install java-1.8.0-openjdk-devel.x86_64
yum -y install java-1.8.0-openjdk-devel.x86_64
- Visual Studio 2012 VC下 OpenGL 配置与使用
Windows环境下的GLUT下载地址:(大小约为150k) Download 1 32位Windows环境下安装GLUT的步骤1.将glut.h复制到C:\Program Files (x86 ...
- 数组的push()、pop()、shift()和unshift()方法
JavaScript的数组是一个拥有堆栈和队列自身优点的global对象.也就是说JavaScript数组可以表现的像栈(LIFO)和队列(FIFO)一样操作.这也是JavaScript数组强大的可操 ...