## 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. C#实体类序列化为XML

    这两天,应要求做一个C/S的小程序,考虑到程序简洁小巧,存数据的方式不使用数据库,而是直接存入XML文档中保存.为了把复杂实体类里面的属性存入XML,我们可以使用C#有的反射机制,做一个简单的通用工具 ...

  2. qt sql 模块有哪些类?

    Class Description translate.google QSqlDatabase Handles a connection to a database 处理与数据库的连接 QSqlDri ...

  3. 超详细:CSS-float详解

    Float 详解 本文摘自:http://www.cnblogs.com/yuanchenqi/articles/5615774.html 首先要知道,div是块级元素,在页面中独占一行,自上而下排列 ...

  4. Python3.6全栈开发实例[021]

    21.给出一个纯数字列表. 请对列表进行排序(升级题). 思路: (1)完成a和b的数据交换. 例如, a = 10, b = 24 交换之后, a = 24, b = 10(2)循环列表. 判断a[ ...

  5. StringBuffer、StringBuilder

    相信大家都知道StringBuffer.StringBuilder,但是这两个的用法都差不多,到底有什么区别呢,这也是面试的时候问的比较多的一道题,这里我就来说说,这两个的区别结合String来说~ ...

  6. (转)fiddler使用简介--其一

    原文地址:https://www.cnblogs.com/miantest/p/7289694.html Fiddler基础知识 Fiddler是强大的抓包工具,它的原理是以web代理服务器的形式进行 ...

  7. Eclipse 输出的文本乱码

    Version: Mars.2 Release (4.5.2)Build id: 20160218-0600 在使用时,发现文本编辑器中的文字出现了乱码.然后在项目的Properties->&g ...

  8. LR controller 参数化

    我在这里写的是在controller设置了vuser后的运行结果. 对于select Next Row和Update Value On的理解都是个人根据运行结果分析得出的理解. 而且主要写的unuqu ...

  9. 递归函数(Day15)

    一.递归的定义 在一个函数里面再调用这个函数本身 递归特性 1.必须有一个明确的结束条件 2.每次进入更深一层递归时,问题规模相比于上一次的递归有所减少 二.递归的应用 1.递归函数与三层菜单 men ...

  10. 【转】python面向对象中的元类

    type() 动态语言和静态语言最大的不同,就是函数和类的定义,不是编译时定义的,而是运行时动态创建的. 比方说我们要定义一个Hello的class,就写一个hello.py模块: class Hel ...