美文网首页
R语言中的数据框

R语言中的数据框

作者: 大数据技术派 | 来源:发表于2019-03-10 22:48 被阅读0次

Data Frame一般被译为数据框,感觉就像是R中的表,由行和列组成,与Matrix不同的是,每个列可以是不同的数据类型,而Matrix是必须相同的。Data Frame每一列有列名,每一行也可以指定行名。如果不指定行名,那么就是从1开始自增的Sequence来标识每一行。所以说数据框在R语言中可是个好东西,R中它是用的非常频繁也是非常有用的数据集合。

创建数据集

> a1 <- c(1:3)

> a2 <- c('a','b','v')

> dat <- data.frame(a1,a2)

> dat

 a1 a2

1  1  a

2  2  b

3  3  v

这样就定义了一个以a1、a2为两列的数据框,第一列是数值型,第二列是字符型。

当然了,后面会讲到,读取结构化数据文件的话,比如csv、空格或者逗号分隔的txt文件,我们可以直接用相应的read.csv或者是read.table直接读进来成为数据框。

访问元素

访问第一行:

> dat[1,]

a1 a2

1  1  a

访问第一列

> dat[,1]

[1] 1 2 3

或者是直接引用列名

> dat$a1

[1] 1 2 3

前面讲过,可以直接用attach(dat)绑定dat,就不需要数据名前缀了,这里还是再复习一遍吧!

>attach(dat)

> a1

[1] 1 2 3

使用完后解除绑定,及时释放资源,这时候就不能直接用列名了。

添加新列

比如添加一个名为a3的列

> dat$a3 <- c('f','m','f')

> dat

a1 a2 a3

1  1  a  f

2  2  b  m

3  3  v  f

查询

查询某一个列变量满足某一个条件或者找指定值用的很多,用which()函数。

查询dat中a3列取值为'm'的行,我们可以这样

> dat[which(dat$a3 == 'm'),]

a1 a2 a3

2  2  b  m

前面讲过,dat[2,]表示dat的第二行,这里which(dat$a3 == 'm')表示满足条件的行,可以有多个,再加上',',构成完整的满足dat中a3列取值为'm'的行的查询语句,这个用的很频繁,需要重点掌握。

连接、合并

这是R语言数据分析基本功。我一般在做R语言网络爬虫时需要把每一张网页数据整理成数据框,然后循环拼接、合并,最后保存到本地。一般用merge()函数。

再创建一个数据框dat1

> dat1 <- data.frame(c('q1','q2','q3'),c(1,4,5))

> dat1

c..q1....q2....q3.. c.4.6.

1                  q1      4

2                  q2      5

3                  q3      6

> names(dat1) <- c('a4','a5')

> dat1

a4 a5

1 q1  1

2 q2  4

3 q3  5

找出dat的a1属性值与dat1的a5属性等值的所有行进行按列连接,组成新行。

> dat2 <- merge(dat,dat1,by.x = 'a1',by.y = 'a5')

> dat2

a1 a2 a3 a4

1  1  a  f q1

学过数据库的人知道,这相当于数据框库操作的迪卡儿等值连接。

微信扫码关注

相关文章

  • R programming - WEEK4

    参考文献 R语言实例-数据过滤grep正则表达式R 语言中,数据框依据不同列进行排序R语言rank函数详细解析R语...

  • 学习小组Day5笔记--ASPIRE1

    理解R语言中两种数据类型 向量(vector)数据框(data frame)

  • R语言--高效操作数据框(dplyr包)(1)

    数据框是R语言中的一个重要数据结构,在数据分析过程中,主要的数据对象就是数据框。R语言内置了data.frame类...

  • 20210516【生信星球】数据结构

    · 小知识点 表格在R语言中改名叫数据框 数据类型向量(vector)数据框(Data frame)矩阵(Matr...

  • R语言中的数据框

    Data Frame一般被译为数据框,感觉就像是R中的表,由行和列组成,与Matrix不同的是,每个列可以是不同的...

  • R语言基础之数据结构

    基础数据结构 R语言中主要有向量(vector),矩阵(matrix),列表(list),数据框(data fra...

  • R函数学习-tibble()

    R for data science ||使用tibble实现简单数据框 tibble是R语言中一个用来替换dat...

  • R语言中的数据框和列表

    手动创建一个数据框(数据框每一列的数据类型必须相同,列与列之间可以不同 patientID <- c(1,2,3,...

  • 2018-11-20 R语言-attach、detach、wit

    在R语言中,对于串列,数据框中的数据的进行操作时,为了避免重复地键入对象名称,可使用attach或with。 1、...

  • 学习小组Day5笔记-zkh

    R-数据结构 表格在R语言中叫数据框 函数或者命令不会用时,除了百度/谷歌搜索以外,用这个命令查看帮助:?read...

网友评论

      本文标题:R语言中的数据框

      本文链接:https://www.haomeiwen.com/subject/fqlmpqtx.html