首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >关于通过character-class进行子集的快速问题

关于通过character-class进行子集的快速问题
EN

Stack Overflow用户
提问于 2011-01-25 04:58:03
回答 3查看 192关注 0票数 0

我认为这是一件非常快的事情,但我想我应该问一下,因为我永远都记不住怎么做了……

假设我有一个具有以下标头的data.frame (称为DF):"Blah""Bleh""Meh"

我还有一个字符类向量foo,其元素与DF的头部相同。

Blah <- rnorm(10)

Bleh <- runif(10)

Meh <- rnorm(10)

DF <- data.frame(Blah,Bleh,Meh)

foo <- c(rep("Blah",3),rep("Bleh",3),rep("Meh",3))

我想做以下事情:根据foo中的第i个元素设置DF子集。我原以为这个--DF$foo[1]--能行得通,但它没有。

我知道我可以使用names==来设置子集,但我认为还有一种更短的(单行)方法?

EN

回答 3

Stack Overflow用户

发布于 2011-01-25 05:06:36

DF$foo[1]尝试返回名为foo (不存在)的列的第一个元素。你想要DF[foo[1]]

票数 3
EN

Stack Overflow用户

发布于 2011-01-25 13:23:35

代码语言:javascript
复制
subset(DF, select=foo[3])
              Blah
1   0.814939149951
2  -0.800644571486
3  -0.424080059851
4   1.012792429940
5   1.291888735720
6   0.642523425131
7   0.537486547429
8   0.315031122082
9  -0.296439716108
10  0.372453578695
票数 2
EN

Stack Overflow用户

发布于 2011-01-25 05:08:33

这是你想要的吗?

DF[ ,foo][1]

啊,Joshua在我打字的时候发了帖子...您还可以选择列的区域,例如:

代码语言:javascript
复制
DF[1:3,foo][1]
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4787091

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档