1.清屏
Ctrl + L 2.退出
q() 3.设置工作空间
getwd()
setwd('D:\\Program Files\\RStudio\\workspace') 4.显档当前工作目录下的文件列表
list.files()
choose.dir()
dir("D:\\Program Files\\RStudio\\workspace", full.names=T, all.files=T, recursive=T) 5.安装包
install.packages("gstat")
remove.packages("gstat") # 删除
update.packages() # 更 新 所 有 已 经 安 装 的 包
availabe.packages() # 可 用 的 更 新央
download.packages(pkgs,...) # 下 载 指 定 的 包
packageStatus() # 返回可更新信息 6.加载包
library(gstat)
detach("package:gstat") # library 的 逆 向 操 作
library() #查看所有可用的包
search() #查看当前调入内存的包 7.查找帮助
?gstat
help('gstat')
apropos('gstat') 8.环境变量(options)
options()
options("digits") # 默 认 打 印 字 符 长 度
options(digits=3) # 设置打印字符长度 9.运行系统命令
system("ls x*")
files <- system("ls x*",intern=T) # 保存输出结果为R对象,加入参数intern=T 10.内存管理
Rgui --min-vsize=10M --max-vsize=100M --min-nsize=500k --max-nsize=1M # 启 动 时 候 管 理 内 存 # 启动后修改最大内存与查询内存信息
help(memory.size)
memory.size(max = FALSE)
memory.limit(size = NA)
memory.limit()
memory.profile() 11.显示内存中的变量
ls()
ls.str()
str(x) 12.清除内存中的变量
rm(list=ls())
rm('a') 13.测试运行时间
# 将 函 数 包 含 在system.time() 内, 返回运行时间
system.time(for(i in 1:100) mad(runif(1000))) 15.原子类型
R的对象类型包括
数 值 型 (numeric) ,
复 数 型 (complex) ,
逻 辑 型 (logical) ,
字 符 型 (character)
原 味 型 (raw)
NA 16.向量
向量必须保证它的所有元素是一 样的模式。向量对象的类型的包括: 实数、复数、逻辑、字符串。 它们是原子(atomic), 即元素类型一样。 17.因子
一个因子不仅包括分类变量本身还包括变量不同的可能水平(即使它们在数据中不出现)。因子函数factor用下面的选项创建一个因子 :
factor(x, levels = sort(unique(x), na.last = TRUE),labels = levels, exclude = NA, ordered = is.ordered(x)) 18.列表(list)
R的列表(list)是一个以对象的有序集合构成的对象 。 列表中包含的对象又称为它的分量(components)。每个分量的长度和类型可以不同。
Lst <- list(name="Fred", wife="Mary", no.children=3, child.ages=c(4,7,9))
获取分量
Lst$name 和Lst[[1]] 返 回 结 果 都 是"Fred",
Lst$wife 和Lst[[2]] 返 回 的 则 是"Mary",
Lst$child.ages[1] 和Lst[[4]][1] 返 回 一 样 的 数 字4 这里特别要注意一下Lst[[1]]和Lst[1]的差别 。[[...]]是用来选择单个元素的操作符,而[...]是一个更为一般的下标操作符。因此前者得到的是列表Lst中的第一个对象,并且含有分量名字的命名列表(named list)中的分量名字会被排除在 外的失。后者得到的则是列表Lst中仅仅由第一个元素构成的子列表。如果是命名列表,分量名字会传给子列表的。 19.数据框(data.frame)
数据框(data.frame)也是列表夬是一个属于“data.frame”类的列表。不过,对于可能属于数据框的列表对象有一些限制条件。
分量必须是向量(数值、字符、逻辑),因子,数值矩阵,列表或者其他数据框;每列的行数必须相等。
数据框常常会被看作是一个由不同模式和属性的列构成的矩阵。它能以矩阵形式出现,行列可以通过矩阵的索引习惯访问。 20.矩阵
矩阵(matrix)是一个双下标(2维)的数组央但是,它非常的重要,以至于需要单独讨论。
包括许多只对矩阵操作的操作符和函数。
命名与数组array()一样。
矩阵的下标顺序是先第一列,然后第二列,等等。
d<-matrix(c(1,2,3,4,5,6,7,8,9),nc=3) 21.数组(array)及维度命名
数组可以看作是带有多个下标类型相同的元素集合,如数值型夬是矩阵的推广。R有一些简单的工具创建和处理数组,特别是矩阵。
向量只有在定义了dim属性后才能作为数组在R中使用。假定,z是一个含1500个元素的向量。那么dim(z)<-c(3,5,100),对dim属性的赋值使得z向量成一个3维的3*5*100的数组。 #命名的顺序总是行,列,第三维,...,每一维还可以有一个总名字,也可以没有
Rabbits <-array(
c( 0, 0, 6, 5,
3, 0, 3, 6,
6, 2, 0, 4,
5, 6, 1, 0,
2, 5, 0, 0),
dim = c(2, 2, 5),
dimnames = list(
Delay = c("None", "1.5h"),
Response = c("Cured", "Died"),
Penicillin.Level = c("1/8", "1/4", "1/2", "", ""))) 22.字符串及相关操作
针对字符串的函数有 print, paste, cat, nchar, strsplit, regexpr, grep, gsub, sub等。
> seq="GGGGCGAAACCGAGACTCTCAAATGACTTTTCTGA"
> seq=strsplit(seq,"")
chartr(old, new, x):字符串替换
tolower(x),toupper(x):大小写变换
paste, cat:合并字符串
nchar:有多少字母
substr(x, start, stop):取子串
strsplit:按分隔符切分字符串
gsub, sub:子串替换
regexpr, grep:查找子串 23.分数
MASS fraction函数可以将小数转换为近似的分数
> fractions(0.291667) 24.日期和时间
当前日期和时间夬返回Date和DateTimeClasses对象。
> date()
> Sys.time()
> Sys.Date()
> s='08:10:00'
> z=strptime(s,'%H:%M:%S')
> class(z) 字符串转换为日期时间的函数有format和as.character
format将Date POSIXlt POSIXct转换为指定格式的字符串。 例如 > w=format.POSIXlt(z,format="%Y-%m-%d")
as.character转换为字符串。 例如 > w=as.character(z) strptime将字符串转换为“POSIXlt”,例如 > w=strptime("09:10:00",'%H:%M:%S')
strftime是format.POSIXlt的一个wrapper # 将 DateTimecleses 转 换 为 Date。 例如 > as.Date(w) #时间差异
as.double(difftime(w,z,units="sec")) 16.字符串表达式与求值
# 返 回 表 达 式 列 表(list), 但 是 不 求 值
parse(text="0==1")
expression(0 == 1)
# 求 字 符 串 代 表 的 表 达 式 的 值
eval(parse(text="0==1"))
# deparse() 返回函数代码字符串. substitute() 将变量替换为其值. 17.读取外部数据
data(meuse) #rda
read.table(file=file.choose(), header=T) #text
read.csv('D:/R/test2.csv', header=T, row.names=1) #csv
data<-read.table(
file="clipboard",sep="\t",header=F,
colClasses = "numeric",na.strings = "-") #从剪切板取数据
data<-t(matrix(scan("fileName",sep=','), 5, 364)) # 读取大数据,读 入364行,每行有5个数 18.给变量赋值
data.entry(X)将打开一个图形编辑器并且可以通过点击适当的单元格修改数值 height<-c(1.75, 1.80, 1.65, 1.90, 1.74, 1.91)
seq():顺序产生数,默认by为1
letters():顺序产生字母,默认by为1 19.查看对象类型
mode(x) # 显示数据类型
typeof(x)
length(x) 22.获取和改变对象属性
attributes(y)
str(y)
table(x)
dim(y) #查看或改变对象的维度,这里将向量变为数组。
dimnames(y)
dimnames(y)$x
class(y) # 确定y的class attr(z, "dim") <- c(10,10) # 允许R把z当作一个10×10 的矩阵。 20.类型转换
as(x,"character")
as.character(x)
as.numeric(s) rbind():将向量按行结合为矩阵,cbind()则相反。
round():起到四舍五入的作用,默认转化为整数。
mean():平均值。
sum():求和。
min():最小值
max():最大值
prod():将数据集中数连乘。
var():方差。
sd():标准差。
which():得到的是向量的下标
rev():
sort():
t():使矩阵转置
矩阵相乘是a%*%b,
a*b是相对应位置上的数相乘。
diag():对矩阵求对角向量;对向量求对角矩阵;参数为常数时求单位向量矩阵。
solve(a):求矩阵的逆矩阵; solve(a,b):求ax=b方程组的解。 rnorm():生成正态分布数。
rpois():泊松分布
rexp():指数分布
rgamma():Gamma分布
runif():均匀分布
rbinom():二项分布
rgeom():几何分布 ------------------------------------------------------
> library(sp)
> library(maptools)
> library(raster) > maxd3 = readAsciiGrid("max.d3.txt")
> rasterlayer.maxd3 = raster(maxd3)
> maxd1 = readAsciiGrid("max.d1.txt")
> rasterlayer.maxd1 = raster(maxd1)
> rasterlayer.max.d3.d1 = rasterlayer.maxd3 - rasterlayer.maxd1
> rasterlayer.maxRange = rasterlayer.maxd1>0
> maxRange = rasterToPolygons(rasterlayer.maxRange, dissolve=TRUE) > plot(maxRange)
> cols = grey.colors(20, 0.1, 0.9, 2.2)
> image(maxd3, col=cols, useRaster=TRUE)

R语言学习的更多相关文章

  1. R语言学习 第四篇:函数和流程控制

    变量用于临时存储数据,而函数用于操作数据,实现代码的重复使用.在R中,函数只是另一种数据类型的变量,可以被分配,操作,甚至把函数作为参数传递给其他函数.分支控制和循环控制,和通用编程语言的风格很相似, ...

  2. R语言学习笔记之: 论如何正确把EXCEL文件喂给R处理

    博客总目录:http://www.cnblogs.com/weibaar/p/4507801.html ---- 前言: 应用背景兼吐槽 继续延续之前每个月至少一次更新博客,归纳总结学习心得好习惯. ...

  3. R语言学习笔记(二)

    今天主要学习了两个统计学的基本概念:峰度和偏度,并且用R语言来描述. > vars<-c("mpg","hp","wt") &g ...

  4. R语言学习笔记:小试R环境

    买了三本R语言的书,同时使用来学习R语言,粗略翻下来感觉第一本最好: <R语言编程艺术>The Art of R Programming <R语言初学者使用>A Beginne ...

  5. R语言学习路线和常用数据挖掘包(转)

    对于初学R语言的人,最常见的方式是:遇到不会的地方,就跑到论坛上吼一嗓子,然后欣然or悲伤的离去,一直到遇到下一个问题再回来.当然,这不是最好的学习方式,最好的方式是——看书.目前,市面上介绍R语言的 ...

  6. R语言学习 第一篇:变量和向量

    R是向量化的语言,最突出的特点是对向量的运算不需要显式编写循环语句,它会自动地应用于向量的每一个元素.对象是R中存储数据的数据结构,存储在内存中,通过名称或符号访问.对象的名称由大小写字母.数字0-9 ...

  7. R语言学习笔记:基础知识

    1.数据分析金字塔 2.[文件]-[改变工作目录] 3.[程序包]-[设定CRAN镜像] [程序包]-[安装程序包] 4.向量 c() 例:x=c(2,5,8,3,5,9) 例:x=c(1:100) ...

  8. R语言学习笔记——C#中如何使用R语言setwd()函数

    在R语言编译器中,设置当前工作文件夹可以用setwd()函数. > setwd("e://桌面//")> setwd("e:\桌面\")> s ...

  9. R语言学习2:绘图

    本系列是一个新的系列,在此系列中,我将和大家共同学习R语言.由于我对R语言的了解也甚少,所以本系列更多以一个学习者的视角来完成. 参考教材:<R语言实战>第二版(Robert I.Kaba ...

  10. R语言学习4:函数,流程控制,数据框重塑

    本系列是一个新的系列,在此系列中,我将和大家共同学习R语言.由于我对R语言的了解也甚少,所以本系列更多以一个学习者的视角来完成. 参考教材:<R语言实战>第二版(Robert I.Kaba ...

随机推荐

  1. Visual C++ 6.0使用教程

    Visual C++它大概可以分成三个主要的部分: 3. Platform SDK.这才是Visual C++和整个Visual Studio的精华和灵魂,虽然我们很少能直接接触到它.大致说来,Pla ...

  2. selenium-webdriver(python) (十四) -- webdriver原理

    之前看乙醇视频中提到,selenium 的ruby 实现有一个小后门,在代码中加上$DEBUG=1 ,再运行脚本的过程中,就可以看到客户端请求的信息与服务器端返回的数据:觉得这个功能很强大,可以帮助理 ...

  3. 构建 iOS 风格移动 Web 应用程序的8款开发框架

    使用 HTML5,CSS3 和 JavaScript 开发移动应用经过实践证明是一种可行的方式.这里收录了几款 iOS 风格的手机应用程序开发框架,帮助您使用擅长的 Web 技术来开发移动应用程序.这 ...

  4. 深度浅出immutable.js

    这篇文章将讲述immutable.js的基本语法和用法. 1.fromJs()  Deeply converts plain JS objects and arrays to Immutable Ma ...

  5. linux service命令解析

      我们平时都会用service xxx start来启动某个进程,那么它背后究竟执行了什么? 其实service的绝对路径为/sbin/service ,打开这个文件cat /sbin/servic ...

  6. 用Qt写软件系列五:一个安全防护软件的制作(3)

    引言 上一篇中讲述了工具箱的添加.通过一个水平布局管理器,我们将一系列的工具按钮组合到了一起,完成了工具箱的编写.本文在前面的基础上实现窗体分割效果.堆栈式窗口以及Tab选项卡. 窗体分割 窗体分割是 ...

  7. 【原创】Kakfa network包源代码分析

    kafka.network包主要为kafka提供网络服务,通常不包含具体的逻辑,都是一些最基本的网络服务组件.其中比较重要的是Receive.Send和Handler.Receive和Send封装了底 ...

  8. Mac下JDK安装配置

    首先可以通过官网下载JDK:http://www.oracle.com/technetwork/java/javase/downloads/index-jsp-138363.html,至于下什么版本根 ...

  9. Unicode中文和特殊字符的编码范围

    编程中有时候需要用到匹配中文的正则,一般用 [ \u4e00-\u9fa5]+ 即可搞定.不过这正则对一般的火星文鸟语就不太适用了,甚至全角的标点符号都不包含在内.例如游戏里面的玩家名,普通青年一般都 ...

  10. 重写onStart()函数

    Android开发中有时会遇到这种情况,在数据列表的Activity中点击添加按钮,弹出另一个Activity添加数据,这样返回数据列表的Activity时就需要刷新数据列表(因为添加了一条数据).这 ...