## 1. 数据输入 ##
a$b # 数据框中的变量
a = 15 # 赋值
a <- 15 # 赋值
a = c(1,2,3,4,5) # 数组(向量)
b = a[1] # 数组下标,从1开始
b = a[1:5] # 子数组
b = a[-2] # 子数组:扣除第2个的子数组
b = a[c(1,3)] # 子数组:访问第1,3个元素
b = c(a0,a1,a2) # 连接多个数组
a = rep(c(1,2,3,4),each=8) # 生成重复数列,支持每个重复和整个重复
a = seq(from=1,to=4,by=1) # 生成等差数列
b = cbind(a0,a1,a2,a3) # 按列合并,生成二维数组
b = a[,1] # 取第1列
b = a[1:4,1]
b = a[,c(1,3,4)]
a = vector(length=8) # 生成向量
a = matrix(1:20, nrow=8,ncol=4) # 生成矩阵
colnames(a) = c("A","B","C","D") # 列名称。!! 函数作为左值
b = as.matrix(cbind(a1,a2,a3)) # 利用cbind直接生成矩阵
b = data.frame(b1 = a1,b2 = a2) # 生成数据框
b = list(c(1,2,3),c("a","b","c","d"),matrix(nrow=2,ncol=2)) # 生成散列
b = a$c == 1 # 生成一个用于筛选的向量 !!较难理解
d = a[b,0] # 生成符合条件的子集
d = a[a$c == 1,]
b = order(a$c) # 生成一个用于排序的向量 !!较难理解
a[b,] # 排序结果
b = merge(a1,a2,by = "Sample",all = "TRUE") # join两个数据框
a$fb = factor(a$b) # 因子化
tapply(X=a$b,INDEX=a$c,FUN=mean) # 对所有子集作函数运算
sapply(a,FUN=mean) # 对所有列作函数运算,输出向量
lapply(a,FUN=mean) # 对所有列作函数运算,输出列表
summary(a) # 计算所有列的基本统计信息
table(a$b) # 计算列联表
table(a$b,a$c)
paste("a","b",sep=",") # 连接字符串

##2. 载入和输出数据 ##
b = read.table(file="C:/data.txt",header=TRUE,dec=".") # 读取CSV数据
library(RODBC) # 载入ODBC工具
odbcConnect("MyDb.mdb") # 连接ODBC数据库
b = sqlFetch(channel,"MyTable") # 取表
write.table(a,file="temp.txt",sep=" ",quote = FALSE, append=FALSE,na="NA") # 输出

## 3. 绘图 ##
plot(x=a$b,y=a$c,xlab="X",ylab="Y",main="Title",xlim=c(0,10),ylim=c(0,100),pch=1,col=2,cex=1.5) # 散点图,参数多支持向量
lines() # 曲线
jpeg(file="any.jpg") # 打开一个jpg文件
dev.off() # 关闭图片文件

## 4. 语法 ##
for (i in 1:10) {do sth...} # for循环
a = function(a,b="n") { # 构造函数
do sht...
}

## A. 函数  ##
# 运算 #
colSums() # 按列求和
max()
median() # 中位数
min()
paste() # 连接字符串
rowSums() # 按行求和
solve() # 矩阵求拟
sqrt() #
sum() # na.rm=TRUE 忽略NA值
t() # 矩阵转置

# 数据定义 #
attach() # 添加数据框为路径
as.matrix() # 作为矩阵
as.data.frame() # 作为数据框
c() # 连接向量
cbind() # 按列连接,生成二维
colnames() # 列名
detach() # 去除数据框作为路径
dim() # 行数、列数
factor() # 因子化
is.matrix() # 是否矩阵
is.data.frame() # 是否数据框
lapply() # 对所有列作函数运算,输出列表
matrix() # 生成矩阵
names() # 查看list的元素名称
nrow() # 行数
ncol() # 列数
order() # 数据框排序
rbind() # 按行连接
rep() # 重复数列。 each 自身重复
rm() # 删除变量
rownames() # 行名
sapply() # 对所有列作函数运算,输出向量
seq() # 等差数列
str() # 数据框的每个属性
summary() # 计算所有列的基本统计信息
table() # 计算列联表
tapply() # 对所有子集作函数运算
unique() # 查找剔重值
vector() # 生成向量

# 环境与载入、输出数据
read.table() # 读取数据文件
scan() # 读取数据文件
setwd() # 设置当前工作目录
write.table() # 输出文件

# 绘图
jpeg() # 打开JPG图片
plot() # 散点图
dev.off() # 关闭图片文件

R语言常用语法总结的更多相关文章

  1. 【R】R语言常用函数

    R语言常用函数 基本 一.数据管理vector:向量 numeric:数值型向量 logical:逻辑型向量character:字符型向量 list:列表 data.frame:数据框c:连接为向量或 ...

  2. R语言基本语法

    R语言基本语法 基本数据类型 数据类型 向量 vector 矩阵 matrix 数组 array 数据框 data frame 因子 factor 列表 list 向量 单个数值(标量)没有单独的数据 ...

  3. R语言 基本语法

    R语言基本语法 我们将开始学习R语言编程,首先编写一个"你好,世界! 的程序. 根据需要,您可以在R语言命令提示符处编程,也可以使用R语言脚本文件编写程序. 让我们逐个体验不同之处. 命令提 ...

  4. R语言基础语法

    学习一门新的语言,率先学习输出hello world.我们就从这里开始学习. 首先打开RStudio这个IDE,然后在左边输入: > mystr <- "hello world& ...

  5. R语言常用的矩阵操作

    R语言是一门非常方便的数据分析语言,它内置了许多处理矩阵的方法.下面列出一些常用的矩阵操作方法示例. 矩阵的生成 > mat <- matrix(:, ncol = , nrow = , ...

  6. R语言常用函数:交集intersect、并集union、找不同setdiff、判断相同setequal

    在R语言进行数据分析时,经常需要找不同组间的相同和不同,那你应该掌握如下几个函数,让你事半功倍. 交集intersect两个向量的交集,集合可以是数字.字符串等 # 两个数值向量取交集intersec ...

  7. R语言︱常用统计方法包+机器学习包(名称、简介)

    一.一些函数包大汇总 转载于:http://www.dataguru.cn/thread-116761-1-1.html 时间上有点过期,下面的资料供大家参考基本的R包已经实现了传统多元统计的很多功能 ...

  8. 【README.md】Markdown语言常用语法

    转自:http://blog.csdn.net/zhaokaiqiang1992 这里只介绍最常用和最常见的功能,若想查看全部的语法,请移步http://wowubuntu.com/markdown/ ...

  9. R语言常用操作

    1 取整运算 在编程实现的时候有时会碰到对数值取整的需求,而取整的方式却多种多样,依赖于具体问题,不过在R中已经配备了种类齐全的相关函数,主要包括以下五种: floor():向下取整: ceiling ...

随机推荐

  1. crontab 问题分析 - CSDN博客 https://blog.csdn.net/tengdazhang770960436/article/details/50997297

    cd /mnt/tools/trunk/plugins/personas; python update_keywords.py crontab 问题分析  crontab 问题分析 - CSDN博客 ...

  2. BigDecimal使用整理

    BigDecimal使用整理 一.     BigDecimal简介 计算机计算中无论是float还是double都是浮点数,由于计算机是二进制的,导致在在浮点数计算时会出现精度丢失,因此引入BigD ...

  3. JavaWeb 之过滤器

    1. 什么是过滤器 Servlet 是用来处理请求的, 过滤器是用来拦截请求的. 当用户请求某个 Servlet 时,会先执行部署在这个请求上的 Filter, 而 Filter 决定是否调用 Ser ...

  4. 如何使用 stl 进行排列组合?

    #include <iostream> #include <vector> #include <algorithm> //从 indexs 集合中选择 num 个元 ...

  5. MySQL复制(二):二进制日志、二进制日志的结构和内容

    通常只有即将执行完毕的语句才会写入到二进制日志中.但是一些特殊情况:语句附加的信息或直接代替语句被写入. 二进制日志记录的内容 作用:记录数据库中表的更变,用于复制和PITP(即时恢复) 基于语句SB ...

  6. Python 中星号作用:解包&打散

    python中’*’和’**’的使用分两个方面,一个是计算,另一个是参数传递过程中元素的打包和解包.  计算方面 ‘*’和’**’在python中最常见的作用分别是‘相乘’和‘乘幂’,如下: > ...

  7. PCL+Qt+VS可视化点云

    前言 Point Cloud Library (PCL)是一个功能强大的开源C++库,假设可以使用好PCL将会对我们在LiDAR数据处理领域的研究产生巨大帮助.LiDAR技术经过几十年的发展.眼下国内 ...

  8. Ubuntu16.04安装Chrome浏览器及解决root不能打开的问题

    1. 安装桌面(emmm,不知道是否只执行第二个命令就行) # apt-get install gonme# apt-get install ubuntu-desktop2. 安装Chrome浏览器 ...

  9. when you are old

    When you are old william Butler Yeats When you are old and grey and full of sleep And nodding by the ...

  10. Linux文件IO

    参考<unix高级环境编程> 本章开始讨论U N I X系统,先说明可用的文件I / O函数——打开文件.读文件.写文件等等.大多数U N I X文件I / O只需用到5个函数:o p e ...