## 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. 巨蟒python全栈开发django4:url反向解析图解&&模板渲染

    第一部分: 1.(1)知识点回顾: django回顾: ()下载安装 输入网址,a,form表单get post,爬虫 (请求)==>django项目服务端的url(r"index/& ...

  2. 疯狂创客圈 JAVA死磕系列 总目录

    无编程不创客,无案例不学习.疯狂创客圈,一大波高手正在交流.学习中! 疯狂创客圈 Java 死磕系列: [博客园 总入口]  QQ群:104131248 [Java 聊天室] 实战从0开始,打造100 ...

  3. python系列四:Python3字符串

    #!/usr/bin/python #Python3 字符串#可以截取字符串的一部分并与其他字段拼接var1 = 'Hello World!'print ("已更新字符串 : ", ...

  4. 1.3 使用电脑测试MC20的电话语音功能

    需要准备的硬件 MC20开发板 1个 https://item.taobao.com/item.htm?id=562661881042 GSM/GPRS天线 1根 https://item.taoba ...

  5. 解释python中join()和split()函数

    join能让我们将指定字符添加至字符串中 a=') print(a) print(type(a)) #1,2,3,4,5,6 #<class 'str'> split()能让我们用指定字符 ...

  6. Python基础(6)_函数

    一 为何要有函数? 不加区分地将所有功能的代码垒到一起,问题是: 代码可读性差 代码冗余 代码可扩展差 如何解决? 函数即工具,事先准备工具的过程是定义函数,拿来就用指的就是函数调用 结论:函数使用必 ...

  7. bacula 备份恢复

    一.数据恢复: 在bacula服务器执行: /opt/bacula/etc/ bconsole #进入交互窗口 *restore #输入restore恢复命令 Automatically select ...

  8. Nexus Repository Manager 使用笔记

    在使用maven是,因内外网限制往往需要配置自由的maven库,小编看见网上教程数不胜数,遍主动试试 以下是下载地址 : http://www.sonatype.com/download-oss-so ...

  9. Java中finalize()用法

    Java中finalize()   垃圾回收器要回收对象的时候,首先要调用这个类的finalize方法(你可以 写程序验证这个结论),一般的纯Java编写的Class不需要重新覆盖这个方法,因为Obj ...

  10. Java中ArrayList和LinkedList区别、ArrayList和Vector的区别

    一般大家都知道ArrayList和LinkedList的大致区别: 1.ArrayList是实现了基于动态数组的数据结构,LinkedList基于链表的数据结构. 2.对于随机访问get和set,Ar ...