[读书笔记] R语言实战 (二) 创建数据集
R中的数据结构:标量,向量,数组,数据框,列表

1. 向量:储存数值型,字符型,或者逻辑型数据的一维数组,用c()创建
** R中没有标量,标量以单元素向量的形式出现
2. 矩阵:二维数组,和向量一样只能是相同模式, 可用matrix() 创建
#byrow指定是否按行填充,默认是按列填充,dimnames包含可选的字符向量型列名和行名
mymatrix <- matrix(vector, nrow = number_of_rows, ncol =
number_of_columns, byrow = TRUE/FALSE, dimnames =
list(char_vector_rownames, char_vector_colnames)
3. 数组:和矩阵类似,维度可以大于2,通过array()函数创建
4. 数据框:不同的列可以包含不同的模式, data.frame()创建
#创建向量
a <- c(1,2,7,4,10,6)
a[c(1,3,5)]
#创建矩阵,按列填充
y <- matrix(1:20,nrow=5,ncol=4)
y
#按行填充
y <- matrix(1:20,nrow=5,ncol=4,byrow = TRUE)
y
#添加行名,列名
cells <- c(1,26,24,68)
rnames <- c("R1","R2")
cnames <- c("C1","C2")
mymatrix <- matrix(cells,nrow=2,ncol=2,byrow=TRUE,dimnames=list(rnames,cnames))
mymatrix #创建数组
dim1 <- c("A1","A2")
dim2 <- c("B1","B2","B3")
dim3 <- c("C1","C2","C3","C4")
z <- array(1:24,c(2,3,4),dimnames=list(dim1,dim2,dim3))
z
#创建数据框
patientID <- c(1,2,3,4)
age <-c(25,34,28,52)
diabetes <- c("Type1","Type2","Type2","Type1")
patientData <- data.frame(patientID,age,diabetes)
patientData
5. attach(), detach(), with()
attach()可以将数据框添加到R的搜索路径当中
detach() 将数据框从搜索路径删除
6. 列表:一些对象(或成分,component)的有序集合,某个列表可能是若干向量、矩阵、数据框、甚至其他列表的组合。可以用list()创建列表
列表是R中重要的数据结构:1)允许以一种简单的方式组织和重新调用不相干的信息,2)R中许多运行结果都是以列表的形式返回。
7. 数据输入
1) 键盘输入 edit() 函数
2) 从带分隔符的文本文件导入数据 read.table()
3) 导入EXCEL数据read.xlsx()
4) 其他
8. 处理对象实用函数
#创建向量
a1 <- c(1,4,6,8,5)
a2 <- c(5,8,6,4,1)
length(a1)
#创建3*4矩阵按行填充
mat1 = matrix(1:12,nrow=3,ncol=4,byrow=TRUE,dimnames = list(c('r1','r2','r3'),c('c1','c2','c3','c4')))
#显示矩阵维度
dim(mat1)
#显示对象结构
str(mat1)
#显示对象中各个成分的名称
names(mat1)<-c('stupid','smart')
names(mat1)
#按列合并对象
cbind(a1,a2)
#按行合并对象
rbind(a1,a2)
#显示当前对象列表
ls()
#列出对象开始部分
head(mat1)
#列出对象结束部分
tail(a1)
[读书笔记] R语言实战 (二) 创建数据集的更多相关文章
- [读书笔记] R语言实战 (一) R语言介绍
典型数据分析的步骤: R语言:为统计计算和绘图而生的语言和环境 数据分析:统计学,机器学习 R的使用 1. 区分大小写的解释型语言 2. R语句赋值:<- 3. R注释: # 4. 创建向量 c ...
- [读书笔记] R语言实战 (四) 基本数据管理
1. 创建新的变量 mydata<-data.frame(x1=c(2,2,6,4),x2=c(3,4,2,8)) #方法一 mydata$sumx<-mydata$x1+mydata$x ...
- [读书笔记] R语言实战 (十三) 广义线性模型
广义线性模型扩展了线性模型的框架,它包含了非正态的因变量分析 广义线性模型拟合形式: $$g(\mu_\lambda) = \beta_0 + \sum_{j=1}^m\beta_jX_j$$ $g( ...
- [读书笔记] R语言实战 (六) 基本图形方法
1. 条形图 barplot() #载入vcd包 library(vcd) #table函数提取各个维度计数 counts <- table(Arthritis$Improved) count ...
- [读书笔记] R语言实战 (十四) 主成分和因子分析
主成分分析和探索性因子分析是用来探索和简化多变量复杂关系的常用方法,能解决信息过度复杂的多变量数据问题. 主成分分析PCA:一种数据降维技巧,将大量相关变量转化为一组很少的不相关变量,这些无关变量称为 ...
- [读书笔记] R语言实战 (三) 图形初阶
创建图形,保存图形,修改特征:标题,坐标轴,标签,颜色,线条,符号,文本标注. 1. 一个简单的例子 #输出到图形到pdf文件 pdf("mygrapg.pdf") attach( ...
- [读书笔记] R语言实战 (五) 高级数据管理
1. 数值函数 1) 数学函数 2) 统计函数 3. 数据标准化 scale() 函数对矩阵或者数据框的指定列进行均值为0,标准化为1的标准化 mydata <- data.frame(c1=c ...
- 《R语言实战》读书笔记--为什么要学
本人最近在某咨询公司实习,涉及到了一些数据分析的工作,用的是R语言来处理数据.但是在应用的过程中,发现用R很不熟练,所以再打算学一遍R.曾经花一个月的时间看过一遍<R语言编程艺术>,还用R ...
- R语言实战(一)介绍、数据集与图形初阶
本文对应<R语言实战>前3章,因为里面大部分内容已经比较熟悉,所以在这里只是起一个索引的作用. 第1章 R语言介绍 获取帮助函数 help(), ? 查看函数帮助 exampl ...
随机推荐
- HDU2147 - kiki's game 【巴什博弈】
Recently kiki has nothing to do. While she is bored, an idea appears in his mind, she just playes th ...
- [网络流24题] 方格取数问题/骑士共存问题 (最大流->最大权闭合图)
洛谷传送门 LOJ传送门 和太空飞行计划问题一样,这依然是一道最大权闭合图问题 “骑士共存问题”是“方格取数问题”的弱化版,本题解不再赘述“骑士共存问题”的做法 分析题目,如果我们能把所有方格的数都给 ...
- vue v-for 渲染完成回调
vue开发中等待vue渲染完成后加载数据的回调方法 Vue.nextTick(function () { alert("加载完成!"); }) 特别注意,如果使用ajax异步渲染的 ...
- mycat 连续分片 -> 自己定义数字范围分片
1,自己定义数字范围分片 自己定义数字范围分片,提前规划好分片字段某个范围属于哪个分片,比方说将第一个500W的数据分片在第一个节点上面.第二个500W的数据分片在第二个节点上,依次类推 2,加入配置 ...
- 程序猿爱情表白专用html5动画网页的代码
程序猿爱情表白专用html5动画网页的代码 下载地址:源代码 程序员表白专用的html5动画特效网页,真的挺羡慕创作者的水平,有这水平能够把爱表白给想表白的人,不要以为那些鲜花是用 的图片.你会发如今 ...
- 一起talk C栗子吧(第一百一十九回:C语言实例--线程死锁三)
各位看官们.大家好,上一回中咱们说的是线程死锁的样例,这一回咱们继续说该样例.闲话休提,言归正转.让我们一起talk C栗子吧! 看官们,由于篇幅的原因我们在上一回仅仅介绍了死锁发生的第一种原因,今天 ...
- android:QQ多种側滑菜单的实现
在这篇文章中写了 自己定义HorizontalScrollView实现qq側滑菜单 然而这个菜单效果仅仅是普通的側拉效果 我们还能够实现抽屉式側滑菜单 就像这样 第一种效果 另外一种效果 第三种效果 ...
- 常用的Linux 命令
来源于面试 求一条linux命令:查找当前目录下所有含有字符串type="json",文件名以.xml的所有文件 find . -name "*.xml"|xa ...
- Sublime text3 Emmet使用
Emmet需要配置pyv8 进入 https://github.com/emmetio/pyv8-binaries 下载解压文件放入Sublime Installed Packages下面 就可以使用 ...
- Maven 学习笔记(三)
有时我们在项目中可能需要打包一个可执行的 jar 包,我最近也遇见了,很傻很天真的用了如下配置: <packaging>jar</packaging> 效果一如既往的好,打包成 ...