统计编程的框架与R语言统计分析基础——摘(1)
清屏命令ctrl+L
一、基础
1、产生数据结构
a、直接输入
b、冒号,1:10
c、seq函数
d、rep函数
> 1:10
[1] 1 2 3 4 5 6 7 8 9 10
> 10:2
[1] 10 9 8 7 6 5 4 3 2
> seq(1,10)
[1] 1 2 3 4 5 6 7 8 9 10
> seq(1,10,2)
[1] 1 3 5 7 9
> rep(2,4)
[1] 2 2 2 2
> rep(1:3,times=3)
[1] 1 2 3 1 2 3 1 2 3
> rep(x=1:3, each=3)
[1] 1 1 1 2 2 2 3 3 3
> rep(1:3,1:3)
[1] 1 2 2 3 3 3
2、数据产生
a、c()函数产生向量
b、matrix()函数产生矩阵
c、data.frame()函数产生数据框
d、factor()函数产生因子
e、list()函数产生列表
f、ts()函数产生时间序列
> x = c(3,4,6)
> x
[1] 3 4 6
> matrix(1:10,2)
[,1] [,2] [,3] [,4] [,5]
[1,] 1 3 5 7 9
[2,] 2 4 6 8 10
> matrix(1:10,nrow=2,ncol=5,byrow=T)
[,1] [,2] [,3] [,4] [,5]
[1,] 1 2 3 4 5
[2,] 6 7 8 9 10
> x = data.frame(1:5, 6:10)
> x
X1.5 X6.10
1 1 6
2 2 7
3 3 8
4 4 9
5 5 10
> x = cbind(x, c('a','b','c','d','e')) #绑上一列字符
> x
X1.5 X6.10 c("a", "b", "c", "d", "e")
1 1 6 a
2 2 7 b
3 3 8 c
4 4 9 d
5 5 10 e
> dimnames(x) #查看x的行列名
[[1]]
[1] "" "" "" "" "" [[2]]
[1] "X1.5" "X6.10"
[3] "c(\"a\", \"b\", \"c\", \"d\", \"e\")" > colnames(x) #只看列名
[1] "X1.5" "X6.10"
[3] "c(\"a\", \"b\", \"c\", \"d\", \"e\")"
> colnames(x) = c('X1','X2','X3') #改列名
> x
X1 X2 X3
1 1 6 a
2 2 7 b
3 3 8 c
4 4 9 d
5 5 10 e
3、运算
%% 余数
%/% 整数商
^ 乘方
& | ! 逻辑运算
4、下标的使用(获取元素) 用中括号[]
> x = 1:10
> x
[1] 1 2 3 4 5 6 7 8 9 10
> x[x>6]
[1] 7 8 9 10
> x[x>6 & x<9]
[1] 7 8
> x = matrix(1:20, 4)
> x
[,1] [,2] [,3] [,4] [,5]
[1,] 1 5 9 13 17
[2,] 2 6 10 14 18
[3,] 3 7 11 15 19
[4,] 4 8 12 16 20
> x[x>2 & x<14]
[1] 3 4 5 6 7 8 9 10 11 12 13
> x[x>2 & x<14] = NA
> x
[,1] [,2] [,3] [,4] [,5]
[1,] 1 NA NA NA 17
[2,] 2 NA NA 14 18
[3,] NA NA NA 15 19
[4,] NA NA NA 16 20
二、一些数字和统计函数
1、
max() min() mean()
标准差sd() 方差var() 相关系数cor()
求和sum() 求积prod()
中位数median() 分位数quantile()
对数log() 指数exp()
排列factorial() 组合choose()
四舍五入round() 向下取整floor() 向上取整ceiling()
总结summary()
2、
累加cumsum() 秩rank() 排序sort() 倒序rev()
矩阵转置t() 逆矩阵solve() 特征根eigen()
三、流程控制
> x = 6
> while(x>1 & winDialog("yesno",message="you are sb")!='YES')
+ x = x-1
统计编程的框架与R语言统计分析基础——摘(1)的更多相关文章
- 统计编程的框架与R语言统计分析基础——摘(2)统计分析之线性回归
一.线性回归 1.简单线性回归 a. > x = women > x height weight 1 58 115 2 59 117 3 60 120 4 61 123 5 62 126 ...
- R语言语法基础二
R语言语法基础二 重塑数据 增加行和列 # 创建向量 city = c("Tampa","Seattle","Hartford"," ...
- R语言语法基础一
R语言语法基础一 Hello world #这里是注释 myString = "hello world" print(myString) [1] "hello world ...
- R语言统计分析应用与SAS、SPSS的比较
能够用来做统计分析的软件和程序很多,目前应用比较广泛的包括:SPSS, SAS.R语言,Matlab,S-PLUS,S-Miner等.下面我们来看一下各应用的特点: SPSS: 最简单的,都是菜单操作 ...
- R语言统计分析技术研究 特征值选择技术要点
特征值选择技术要点 作者:王立敏 文章来源: 网络 1.特征值 特征值是线性代数中的一个重要概念.在数学,物理学,化学,计算机等领域有着广泛的应用. ...
- R语言学习-基础篇1
###第一周:R基础 rm(list = ls()) #ctr+L###矩阵相乘,函数diag()a=matrix(1:12,nrow=3,ncol=4)b=matrix(1:12,nrow=4,n ...
- 转载 R语言颜色基础设置
原文链接:http://www.biostatistic.net/thread-5065-1-1.html R语言在画图形的时候,经常遇到颜色设定问题,用户可以根据color.rgb值和hsv值来设定 ...
- 石头剪刀布 R语言统计分析
关于石头剪刀布,做出了详细的分析,具体ppt见地址 http://files.cnblogs.com/files/GMGHZ971322/R%E8%AF%AD%E8%A8%80.pptx 16级电商三 ...
- R语言统计分析技术研究——卡方检验的思想和实现
卡方检验的思想和实现 作者:李雪丽 材料摘自:百度
随机推荐
- Java程序员面试技巧
Java 程序员面试技巧 对于每一个求职者,有一份优秀的简历是很必要的,企业通过简历的筛选,会给予求职者面试的机会.然而,很多求职者就是在面试过程中与钟情的工作失之交臂.如何在面试中取得成功呢?“细节 ...
- 超全面的JavaWeb笔记day11<JSP&Session&Cookie&HttpSession>
1.JSP 2.回话跟踪技术 3.Cookie 4.HttpSession JSP入门 1 JSP概述 1.1 什么是JSP JSP(Java Server Pages)是JavaWeb服务器端的动态 ...
- 2011年冬斯坦福大学公开课 iOS应用开发教程学习笔记(第三课)
第二课名称是:Objective-C 回顾上节课的内容: 创建了单个MVC模式的项目 显示项目的各个文件,显示或隐藏导航,Assistant Editor, Console, Object Libra ...
- GIS-ArcGIS 数据库备份还原
Create directory sdebak as 'E:\10_DataFile'; alter system set deferred_segment_creation=false; ALTER ...
- VirtualBox设置NAT端口映射
原文地址 :http://www.2cto.com/os/201209/153863.html VirtualBox设置NAT端口映射 好吧,我知道这个问题有很多人都讲过,但是,你们不觉得VB ...
- VS2015编译CURL7.54.0源码
2018.8.24找到一种新途径,运行curl-master\projects\generate.bat,然后curl-master\projects\Windows\VC14\curl-all.sl ...
- Effective C++ —— 杂项讨论(九)
条款53 : 不要轻忽编译器的警告 请记住: 1. 严肃对待编译器发出的警告信息.努力在你的编译器的最高(最严苛)警告级别下争取“无任何警告”的荣誉. 2. 不要过度倚赖编译器的报警能力,因为不同的编 ...
- C++中的字节对齐分析
struct A { int a; char b; short c; }; struct B { char a; int b; short c; }; #pragma pack(2) struct C ...
- IOS strong和weak的区别
strong和weak的区别 strong表示保留它指向的堆上的内存区域不再指向这块区域了. 也就是说我强力指向了一个区域,我们不再指向它的条件只有我们指向nil或者我自己也不在内存上,没有人stro ...
- 静态同步synchronized方法和synchronized(class)代码块
关键字synchronized还可以应用在static静态方法上,如果这样写,那是对当前的*.java文件对应的Class类进行持锁. package synStaticMethod; /** * C ...