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笔记整理(持续更新中)的更多相关文章

  1. java视频教程 Java自学视频整理(持续更新中...)

    视频教程,马士兵java视频教程,java视频 1.Java基础视频 <张孝祥JAVA视频教程>完整版[RMVB](东西网) 历经5年锤炼(史上最适合初学者入门的Java基础视频)(传智播 ...

  2. docker学习资料整理(持续更新中..)

    docker最近可以说火得一踏糊涂,跟 51大神在交流技术的时候这个东西会多次被提到,当我们还玩vm+linux/freebsd的时候,人家已经上升到更高层次了,这就是差距,感觉好高大上的样子,技术之 ...

  3. oracle数据库自学笔记(持续更新中……)

    以前的项目都是使用mysql数据库开发的,如今进了新的公司,开始接触到了Oracle数据库,而自己以前没有接触过,就自己挤时间来学习一下. 一.关系型数据库的概念 关系型数据理论由E.F.Codd博士 ...

  4. Oracle 9i & 10g编程艺术-深入数据库体系结构-学习笔记(持续更新中)

    --20170322 --1.0 --更新表的统计信息begin dbms_stats.set_table_stats(user,'EMP',numrows => 10000);end; beg ...

  5. HTML5学习笔记(持续更新中....)

    平时的工作中,不知不觉我们应用了很多HTML5,但当正儿八经问起来你对HTML5了解多少,很多时候都有点懵. 做个简单的HTML5总结.包括简介.要学的知识点.凌乱的知识点 HMTL5简介 定义:ht ...

  6. Canvas 笔记(持续更新中)

    1.从线条开始 HTML <canvas id="canvas"></canvas> Javascript var canvas=document.getE ...

  7. 《EM-PLANT仿真技术教程》读书笔记(持续更新中)

    1.在系统分析过程中,必须考虑系统所处的环境,因此划分系统与环境的边界是系统分析的首要任务 2.模型可以分为物理模型和数学模型.数学模型可以分为解析模型.逻辑模型.网络模型以及仿真模型.模型可以分为离 ...

  8. 剑指Offer读书笔记(持续更新中)

    (1)定义一个空的类型,里面没有不论什么成员变量和成员函数,对该类型求sizeof,得到的结果是多少? 答案是1.空类型的实例中不包括不论什么信息,本来求sizeof应该是0,可是当我们声明该类型实例 ...

  9. 我的 CSDN 博客目录索引(主要记录了我学习视频、书籍的笔记,持续更新中)

    我的 CSDN 博客地址: lw_power的专栏 - 博客频道 - CSDN.NEThttp://blog.csdn.net/lw_power 佟刚老师<Spring4视频教程>学习笔记 ...

  10. Gradle项目构建工具学习笔记(持续更新中。。。)

    1.gradle的安装 1)从官网下载gradle,然后解压 2)在系统环境变量新建GRADLE_HOME 3)将%GRADLE_HOME%\bin加入PATH中 2.验证是否安装成功 gradle ...

随机推荐

  1. 【ARM-Linux开发】ARM嵌入式设备Linux系统启动步骤和方式

    1). 简介 本文简单介绍ARM嵌入式设备基于嵌入式Linux操作系统时候的启动步骤和启动方式, 区别与X86平台,ARM平台下并没有一个标准的启动步骤,不同ARM SoC都会使用各自定义的boot ...

  2. IDEA和JIRA任务联动(redmine同理)

    IDEA和JIRA任务联动-操作流程详解 redmine和这个步骤类似,只是第一步选择的工具不一样 操作流程 添加jira配置,File->Setting-->tools-->Tas ...

  3. 90% 前端开发者都不知道的 JavaScript 实用小技巧

    面试神器之数组去重 const a = [...new Set([1, 2, 3, 3])] >> [1, 2, 3] 操作数组担心 falsy 值? const res = myArra ...

  4. 分布式session一致性

    实现思路:当客户端发送请求到服务端后,在后台生成一个token,将token作为key,用户状态信息作为value,存入redis缓存中,并设置过期时间,最后把token返回给客户端 客户端第会保存t ...

  5. [Linux] - Manjaro ARM 系统配置(更新镜像源,安装 Docker 和 Dotnet Core)

    硬件:Raspberry Pi 4B系统:Manjaro-ARM-xfce-rpi4-19.08网址:https://manjaro.org/ Issue系统启动后,中文字符显示为小方格乱码 解决:安 ...

  6. Word 图片表格自动编号、交叉引用、批量更改图片标题格式、生成图录和表录

    1. 前言 论文往往里往往需要插入很多图片,下放需要标上 图a-b,其中 a 是章节号码,b是该章节中第几张图.比如第一章第二副图就是 图1-2.但是有个问题,每次我们插入了一张图或删掉了一张,前后的 ...

  7. 使用StringBuilder构建字符串

    使用StringBuilder构建字符串确实可以提高效率,比“+”要高效不少.但使用时也有一些坑: 首先,我们指定一个StringBuilder,并设置其长度. StringBuilder build ...

  8. yum -y install java-1.8.0-openjdk-devel.x86_64

    yum -y install java-1.8.0-openjdk-devel.x86_64

  9. Visual Studio 2012 VC下 OpenGL 配置与使用

    Windows环境下的GLUT下载地址:(大小约为150k)    Download 1 32位Windows环境下安装GLUT的步骤1.将glut.h复制到C:\Program Files (x86 ...

  10. 数组的push()、pop()、shift()和unshift()方法

    JavaScript的数组是一个拥有堆栈和队列自身优点的global对象.也就是说JavaScript数组可以表现的像栈(LIFO)和队列(FIFO)一样操作.这也是JavaScript数组强大的可操 ...