R语言常用语法总结
## 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语言常用语法总结的更多相关文章
- 【R】R语言常用函数
R语言常用函数 基本 一.数据管理vector:向量 numeric:数值型向量 logical:逻辑型向量character:字符型向量 list:列表 data.frame:数据框c:连接为向量或 ...
- R语言基本语法
R语言基本语法 基本数据类型 数据类型 向量 vector 矩阵 matrix 数组 array 数据框 data frame 因子 factor 列表 list 向量 单个数值(标量)没有单独的数据 ...
- R语言 基本语法
R语言基本语法 我们将开始学习R语言编程,首先编写一个"你好,世界! 的程序. 根据需要,您可以在R语言命令提示符处编程,也可以使用R语言脚本文件编写程序. 让我们逐个体验不同之处. 命令提 ...
- R语言基础语法
学习一门新的语言,率先学习输出hello world.我们就从这里开始学习. 首先打开RStudio这个IDE,然后在左边输入: > mystr <- "hello world& ...
- R语言常用的矩阵操作
R语言是一门非常方便的数据分析语言,它内置了许多处理矩阵的方法.下面列出一些常用的矩阵操作方法示例. 矩阵的生成 > mat <- matrix(:, ncol = , nrow = , ...
- R语言常用函数:交集intersect、并集union、找不同setdiff、判断相同setequal
在R语言进行数据分析时,经常需要找不同组间的相同和不同,那你应该掌握如下几个函数,让你事半功倍. 交集intersect两个向量的交集,集合可以是数字.字符串等 # 两个数值向量取交集intersec ...
- R语言︱常用统计方法包+机器学习包(名称、简介)
一.一些函数包大汇总 转载于:http://www.dataguru.cn/thread-116761-1-1.html 时间上有点过期,下面的资料供大家参考基本的R包已经实现了传统多元统计的很多功能 ...
- 【README.md】Markdown语言常用语法
转自:http://blog.csdn.net/zhaokaiqiang1992 这里只介绍最常用和最常见的功能,若想查看全部的语法,请移步http://wowubuntu.com/markdown/ ...
- R语言常用操作
1 取整运算 在编程实现的时候有时会碰到对数值取整的需求,而取整的方式却多种多样,依赖于具体问题,不过在R中已经配备了种类齐全的相关函数,主要包括以下五种: floor():向下取整: ceiling ...
随机推荐
- 巨蟒python全栈开发django4:url反向解析图解&&模板渲染
第一部分: 1.(1)知识点回顾: django回顾: ()下载安装 输入网址,a,form表单get post,爬虫 (请求)==>django项目服务端的url(r"index/& ...
- 疯狂创客圈 JAVA死磕系列 总目录
无编程不创客,无案例不学习.疯狂创客圈,一大波高手正在交流.学习中! 疯狂创客圈 Java 死磕系列: [博客园 总入口] QQ群:104131248 [Java 聊天室] 实战从0开始,打造100 ...
- python系列四:Python3字符串
#!/usr/bin/python #Python3 字符串#可以截取字符串的一部分并与其他字段拼接var1 = 'Hello World!'print ("已更新字符串 : ", ...
- 1.3 使用电脑测试MC20的电话语音功能
需要准备的硬件 MC20开发板 1个 https://item.taobao.com/item.htm?id=562661881042 GSM/GPRS天线 1根 https://item.taoba ...
- 解释python中join()和split()函数
join能让我们将指定字符添加至字符串中 a=') print(a) print(type(a)) #1,2,3,4,5,6 #<class 'str'> split()能让我们用指定字符 ...
- Python基础(6)_函数
一 为何要有函数? 不加区分地将所有功能的代码垒到一起,问题是: 代码可读性差 代码冗余 代码可扩展差 如何解决? 函数即工具,事先准备工具的过程是定义函数,拿来就用指的就是函数调用 结论:函数使用必 ...
- bacula 备份恢复
一.数据恢复: 在bacula服务器执行: /opt/bacula/etc/ bconsole #进入交互窗口 *restore #输入restore恢复命令 Automatically select ...
- Nexus Repository Manager 使用笔记
在使用maven是,因内外网限制往往需要配置自由的maven库,小编看见网上教程数不胜数,遍主动试试 以下是下载地址 : http://www.sonatype.com/download-oss-so ...
- Java中finalize()用法
Java中finalize() 垃圾回收器要回收对象的时候,首先要调用这个类的finalize方法(你可以 写程序验证这个结论),一般的纯Java编写的Class不需要重新覆盖这个方法,因为Obj ...
- Java中ArrayList和LinkedList区别、ArrayList和Vector的区别
一般大家都知道ArrayList和LinkedList的大致区别: 1.ArrayList是实现了基于动态数组的数据结构,LinkedList基于链表的数据结构. 2.对于随机访问get和set,Ar ...