R语言学习笔记 (入门知识)
R免费使用;统计工具;
# 注释,行注释
块注释:anything="这是注释的内容"
常用R语言编辑器:Rsutdio,Tinn-R,Eclipse+StatET;中文会有乱码
帮助:?,help; ?boxplot, help(boxplot),help("[[")
运行R文件:source('abc.R')
加载包:library(ggplot2)
安装包:install.packages()
退出R:q()
设置工作目录:setwd("E:\\XXX\\yyy\\")
清空内存:rm(list=ls(all=TRUE))
对数:log自然对数;log10;
标量;
赋值:<-,=
变量取名可以用.
c() 向量; Win[1], Win[1:5], Win[-2],下标从1开始;
c()可以连接多个标量;也可连接多个向量;
NA
变量取名大写字母开头
na.rm=TRUE
rep(); rep(1:4, each=8)
seq(); seq(from=1,to=4,by=1)
cbind()
rbind()
matrix(); matrix(nrow=8,ncol=4); Z[,1], Z[1:8,1], Z[2,], Z[,-3], Z[,c(1,3,4)]
dim(Z)
nrow(); ncol();
vector(length=8)
colnames()
rownames()
as.matrix;as.data.frame,is.matrix, is.data.frame,
t()
XX<-data.frame(AA=AA,BB=BB); XX$AA; XX[,1];
str()
names()
list(X1=x1,X2=x2)
is.na()
!is.na()
read.table() 生成了数据框
scan() 数值型比较快
write.table() #可以用于保存向量,矩阵,data.frame.
factor
attach(); detach();
unique()
筛选子集: Sel<-Squid$Sex==1; SquidM<-Squid[Sel,]; Squid[Squid$Sex==1,];
|, &, !=, ==
order() # To sort a data frame in R, use the order( ) function.
对向量排序: sort(x, decreasing = FALSE, ...)
merge()
as.factor(); as.numeric(); as.character();
factor(Squid$Sex, levels=c(1,2), labels=c("M","F"))
tapply(); tapply(X=Veg$R,INDEX=Veg$Transect, FUN=mean) 根据第二个变量的不同水平对第一个变量进行求平均值运算;
mean,min,max,sd,length,
lapply() 多个变量;输出list;lapply(x,FUN=mean)
sapply() 多个变量;输出vector; sapply(x,FUN=mean)
summary() 输出最小值,第一个四分位数,中位数,平均值,第三个四分位数,最大值;
table() 计算列联表;一个变量或两个变量;
plot(); plot(x=XXX,y=YYY); plot(y~x,data=Veg);
plot(x=,y=,xlab=,ylab=,main=,xlim=,ylim=),pch=1..25;
warnings()
col 颜色; cel 尺寸;cex尺寸;
lines()划线; loess()loess平滑;fitted()拟合值;
lwd线宽度,lty线类型;
jpeg(file="xxxx.jpg"); dev.off();
paste(); paste0();
for(i in 1:27) {}
for(var in seq) expr
while(cond) expr
repeat expr
break
next
if(cond) expr
if(cond) cons.expr else alt.expr
ifelse(choice=="Zeros",expr1,expr2);
自定义函数
function_name<-function(params){
do something
expr -- return values;
}
colSums(); rowSums();
函数参数默认值
function_name<-function(params, xxx="YYY"){
do something
expr -- return values;
}
《R语言初学者指南》
ls(); ls(pat = "m");ls(pat = "^m")
help("bs", try.all.packages = TRUE); help("bs", package = "splines")
help.search("tree", rebuild = TRUE))
对象的类型和长度可以分别通过函数mode和length得到
\", \'
函数scan比read.table要更加灵活,它们的区别之一是前者可以指定变量的类型
mydata <- scan("data.dat", what = list("", 0, 0)) 读取了文件data.dat中三个变量,第一个是字符型变量,后两个是数值
型变量。
函数read.fwf可以用来读取文件中一些固定宽度格式的数据
若想用更简单的方法将一个对象写入文件,可以使用命令write(x,file ="data.txt"),其中x是对象的名字(它可以是向量,矩阵,或者数
组)
要记录一组任意数据类型的对象,我们可以使用命令save(x, y, z,file= "xyz.RData")。
数据(用R的术语来说叫做工作空间)可以在使用load("xyz.RData")之后被加载到内存中。
键盘输入一些数据也是可以的,只需要直接使用默认选项的scan函数:
函数sequence创建一系列连续的整数序列,每个序列都以给定参数的数值结尾
函数gl(生成不同的水平/层次数据)
expand.grid()创建一个数据框
数学运算 比较运算 逻辑运算
+ 加法 < 小于 ! x 逻辑非
- 减法 > 大于 x & y 逻辑与
* 乘法 <= 小于或等于 x && y 同上
/ 除法 >= 大于或等于 x j y 逻辑或
^ 乘方 == 等于 x jj y 同上
%% 模 != 不等于 xor(x, y) 异或
%/% 整除
identical和all.equal
如果X是一个矩阵,命令data.entry(X)将打开一个图形编辑器并且可以通过点击适当的单元格修改数值或者添加新的行或列
R语言学习笔记 (入门知识)的更多相关文章
- R语言学习笔记:基础知识
1.数据分析金字塔 2.[文件]-[改变工作目录] 3.[程序包]-[设定CRAN镜像] [程序包]-[安装程序包] 4.向量 c() 例:x=c(2,5,8,3,5,9) 例:x=c(1:100) ...
- R语言学习笔记之: 论如何正确把EXCEL文件喂给R处理
博客总目录:http://www.cnblogs.com/weibaar/p/4507801.html ---- 前言: 应用背景兼吐槽 继续延续之前每个月至少一次更新博客,归纳总结学习心得好习惯. ...
- R语言学习笔记-机器学习1-3章
在折腾完爬虫还有一些感兴趣的内容后,我最近在看用R语言进行简单机器学习的知识,主要参考了<机器学习-实用案例解析>这本书. 这本书是目前市面少有的,纯粹以R语言为基础讲解的机器学习知识,书 ...
- R语言学习笔记(二)
今天主要学习了两个统计学的基本概念:峰度和偏度,并且用R语言来描述. > vars<-c("mpg","hp","wt") &g ...
- R语言学习笔记:小试R环境
买了三本R语言的书,同时使用来学习R语言,粗略翻下来感觉第一本最好: <R语言编程艺术>The Art of R Programming <R语言初学者使用>A Beginne ...
- R语言学习笔记︱Echarts与R的可视化包——地区地图
笔者寄语:感谢CDA DSC训练营周末上完课,常老师.曾柯老师加了小课,讲了echart与R结合的函数包recharts的一些基本用法.通过对比谢益辉老师GitHub的说明文档,曾柯老师极大地简化了一 ...
- R语言学习笔记(五)绘图(1)
R是一个惊艳的图形构建平台,这也是R语言的强大之处.本文将分享R语言简单的绘图命令. 本文所使用的数据或者来自R语言自带的数据(mtcars)或者自行创建. 首先,让我们来看一个简单例子: ...
- R语言学习笔记——C#中如何使用R语言setwd()函数
在R语言编译器中,设置当前工作文件夹可以用setwd()函数. > setwd("e://桌面//")> setwd("e:\桌面\")> s ...
- R语言学习笔记(一)
1.不同的行业对数据集(即表格)的行和列称谓不同,统计学家称其为观测(observation)和变量(variable): 2.R语言存储数据的结构: ①向量:类似于C语言里的一位数组,执行组合功能的 ...
随机推荐
- nodejs批量处理图片
var gm = require('gm');var imageMagick = gm.subClass({ imageMagick : true });var path = require('pat ...
- [SQL in Azure] Getting Started with SQL Server in Azure Virtual Machines
This topic provides guidelines on how to sign up for SQL Server on a Azure virtual machine and how t ...
- 简单的sqlhelper的学习日志
一:今天做了一个简单的sqlhelper,还有调用,将今天学的内容总结一下,解决方案如下: 二:对应的sqlhelper的内容: using System; using System.Collecti ...
- Android 编程下代码之(QQ消息列表滑动删除)
这份代码写出来有些时候了,一直没共享,现在把它共享给大家.简单列一下代码中你可以学到的知识点: 自定义控件的实现方式: 事件的拦截分发消费机制: QQ会话列表滑动删除原理: 最后附上源码链接:Q ...
- Delphi对象池MyObjectPool.pas
对象池一般在服务端使用,所以稳定性是第一的. 欢迎提意见 unit uMyObjectPool; interface uses SyncObjs, Classes, Windows, SysUtils ...
- 【delphi】delphi操作sqlite3
SQLite SQLite是一个老牌的轻量级别的本地文件数据库,完全免费且开源,不需要安装,无须任何配置,当然,这样管理功能就不是很强大了,但是它的主要应用也是在本地数据库,可以说是最简单好用的嵌入式 ...
- hive里的group by和distinct
hive里的group by和distinct 前言 今天才明确知道group by实际上还是有去重读作用的,其实细想一下,按照xx分类,肯定相同的就算是一类了,也就相当于去重来,详细的看一下. gr ...
- nexus maven私服搭建
1.在服务器上安装jdk 2.下载 nexus-3.14.0-04-unix.tar.gz,并上传到服务器/opt目录 3.解压 tar -zxvf nexus-3.14.0-04-unix.tar. ...
- Django admin 常用方法
1.调整页面头部显示内容和页面标题 #admin.py admin.site.site_header = '广告业务系统' admin.site.site_title = '广告业务系统'
- 删除mysql备份文件
前言:前篇介绍了mysql的备份方法,但备份不是越多越好,如果磁盘空间不够用,我需要保留近一个周的备份就可以了,那就需要删除备份脚本了,特别注意删除操作比较危险,变量传参要进行二次确认. 下面给出删除 ...