TryR网站的R语言笔记.md
2016-10-18 本文已影响48人
Javalover93
我的评价:对R语言的惊鸿一瞥
http://tryr.codeschool.com/
1 Using R* 直接输入命令行可进行一般的运算,四则运算和逻辑运算
- 逻辑值符号 T == TRUE F == FALSE
- 变量赋值 x<-5
- 可以赋予任何值而不用担心值得类型
- 命令行输入变量名可以查看变量的值,或print(x)
- 函数 sum(1,2,3)
- 有些函数参数带有名字 rep("a",times=3)
- 帮助 help(functionname)
- na.rm = TRUE 时自信不将NA值纳入计算
- 函数使用样例 example(functionname)
- 输入的命令可以存入脚本,便于重复使用和保存
- list.files 查看脚本
- source("files.R") 查看脚本里的代码
2 Vector
- combine函数创建矢量,只要属于同一类数据即可
- c(4,7,9)
- 不是同一类数据的自动转化成可以承载的同一种数据类型
c(1,TRUE,"three") 存入的是 “1”,“TRUE”,“three"
- 创造数字序列的符号 :
- 5:9 5 6 7 8 9
- 9:5 9 8 7 6 5
- 用seq()函数创建序列 seq(start,end,step)
- 矢量可以作为变量 sentence <- c('a','b','c')
- 取数据 sentence[3] 得到'c'
- 改变数据 sentence[3]<-'b'
- 增加数据 sentence[4]<-'d'
- 取部分数据 sentence[c(1,3)]得到'a' 'b'
- 取一系列数据 sentence[2:4]
- 改变一系列数据 sentence[5:7]<-c('a','b','c')
- 给矢量里的每一个量一个名字
ranks<-1:3
names(ranks) <- c('a','b','c')
得到 ranks
a b c
1 2 3 - 按照名字取值 ranks['a'] 得到1
- 按照名字改变 ranks['a'] <- 4
- barplot(ranks) 可以画出直方图,矢量各分量的名字作为横坐标
- 对矢量的计算作用于矢量的每一个值,包含以下类型
- 矢量+标量
- 矢量+矢量
- 矢量/矢量
- 函数(矢量)
- plot(x,y)作散点图
- NA值,不是数据的值
3 Matrix
- 创造矩阵 matrix(values_vector,row_number,col_number)
- values为一个标量时,创建一个以values为默认值的矩阵
- dim(matrix01) <- c(new_row,new_col) 将矩阵变成new_row行new_col列的矩阵
- 取值 matrixname[2,3]
- 赋值 matrixname[2,3] <- 1
- 取一行 matrixname[2,]
- 取一列 matrixname[,3]
- 取多列 matrixname[,2:5]
- contour 函数绘制矩阵的轮廓线/等高线
- persp 函数绘制3D轮廓图
- image 函数绘制热力图
4 Summary Statistics
- mean() 均值
- barplot 查看分布情况
- abline(h=5或v=5) 在图上增加水平线或数值线
- median() 中位数
- sd() 标准差
5 Factors 用于数据分类
- factor() 用于数据分类
- 分类的结果不是原始数据,而是对factor的level的正整数引用
- leavels() 来获取分类结果
- plot() 作图时,pch参数可以增加分类
- legend增加图例
- legend("topright",levels(factor(x)),pch=1:length(factor(x))) 这个写法可以避免每次都修改参数
6 Data Frames
- 一种类似excel的sheet的数据结构
- 创建 name <- data.frame(vector1,vector2,vector3)
- 每一列的列标题分别是vector1,vector2,vector3
- 取一列 name[[2]] 或 name[["col_name"]] 或name$col_name
- read.csv("filename.csv") 加载csv
- read.table("filename.txt", sep='\t', header=TRUE) 加载表格类型
- merge(x=table1,y=table2) 用于合并两个表,按照相同的列合并
7 真实世界的数据
- cor.test(x,y) 计算相关性
- lm(y~x) 计算y关于x的线性模型
- 通过CRAN取得更多的库
- install.packages("ggplot2")
- help(package="ggplot2")