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. @PropertySource绝对路径(java.io.FileNotFoundException问题解决)

    经常使用@PropertySource 来指定配置文件,然后@value获取配置参数: @Component @PropertySource(value= {"classpath:rules ...

  2. js精度缺失问题

    /** ** 加法函数,用来得到精确的加法结果 ** 说明:javascript的加法结果会有误差,在两个浮点数相加的时候会比较明显.这个函数返回较为精确的加法结果. ** 调用:accAdd(arg ...

  3. matlab 双坐标折线图画法

    %%各时段电量需求 clc close all clear all cost_gd = [2200 1800 3800 4600]; cost_bj = [2.7 2.2 1.8 3.6]; cost ...

  4. 微信JS从1.0.0升级到1.1.2的一个坑

    因为1.0.0不支持电脑端日期Picker滚动,升级成了1.1.2,结果发现日期选择不起作用了经过跟踪发现 通过控制台查看 resut[1].toString()居然是number类型,修改代码为() ...

  5. 使用SSM搭建一个简单的crud项目

    使用SSM完成增删查改 前端使用到的技术:ajax,json,bootstrap等 完整项目地址:点这里GitHub 项目地址,可以在线访问 这一章节主要搭建SSM的环境. SpringMVC Spr ...

  6. yzoj 2372 小B的数字 题解

    题意 判断是否存在一个序列 $ b_i $ 使得 $ \prod_{i = 1}^{n} b_i  | b_i^{a_i}$ 恒成立,其中 $ b_i $ 中的每个数都是2的正整数次幂. 样例输入 3 ...

  7. 嵌入式02 STM32 实验07 串口通信

    STM32串口通信(F1系列包含3个USART和2个UART) 一.单片机与PC机串行通信研究目的和意义: 单片机自诞生以来以其性能稳定,价格低廉.功能强大.在智能仪器.工业装备以及日用电子消费产品中 ...

  8. a++与++a,谈谈C++的参数传递

    先看一段代码: #include<iostream> using namespace std; void func(int a, int b) { cout << a < ...

  9. ajax中如何使用全局变量?

    在ajax中一般都是采取默认的异步请求,但是有时候参数是需要做到全局通用,这时候发起同步请求. 如下: $.ajax({ type:"post", url:"url路径& ...

  10. Linux下的应用进程监控

    两个思路: 一.定时执行监控脚本 采用centos自带的crontab根据需要定时执行status.sh脚本 #!/bin/bash status=$(ps -aux | grep "rsy ...