Data.frame 过滤使用 %in%

安托万 C.

我有以下几点data.frame

  qualifiers symbols values
1        Buy    AAPL  326.0
2       Sell    MSFT  598.3
3       Sell   GOOGL  201.5

我只想保留qualifiers“出售”的行,然后删除qualifiers列。

所以新的data.frame将是:

  symbols values
1    MSFT  598.3
2   GOOGL  201.5

这是我尝试过的:

# Select the rows with "Sell" qualifier
valid_symbols <- df$symbols[df$qualifiers == "Sell"]

# Keep only these
df <- df[df$symbols %in% valid_symbols]

# Remove qualifiers column
df$qualifiers <- NULL

第 1 行按预期工作:

> valid_symbols
[1] MSFT  GOOGL
Levels: AAPL GOOGL MSFT

但第 2 行没有:

> df
  symbols values
1    AAPL  326.0
2    MSFT  598.3
3   GOOGL  201.5

它似乎是按列而不是按行过滤掉的。


所以我想知道:

  1. 我的代码有什么问题
  2. 有没有最有效/优雅的方式来实现我想要的
阿克伦

代码不起作用的原因是因为,需要。默认情况下,不使用,,它认为我们正在提供列索引/列名称等。

df <- df[df$symbols %in% valid_symbols,]
#OP's code
df$qualifiers <- NULL

如果非数字列是factor,那么我们可能需要换行droplevels以删除这些列中未使用的级别

df <- droplevels(df)

但是,这可以通过 subset

subset(df, qualifiers == "Sell", select = -1)

或与 dplyr filter

library(dplyr)
df %>% 
    filter(qualifiers == "Sell") %>%
    select(2:3)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用特定范围过滤data.frame的特定列

来自分类Dev

根据row_number()过滤data.frame

来自分类Dev

根据行NA计数过滤data.frame

来自分类Dev

如何为dplyr过滤的data.frame分配值?

来自分类Dev

根据多个条件过滤一组data.frame

来自分类Dev

如何按坐标子集/过滤data.frame

来自分类Dev

按 R 中的日期范围过滤 data.frame

来自分类Dev

根据几个条件对 data.frame 进行分组和过滤

来自分类Dev

使用所有列NA过滤data.frame,但保留其中一些为NA

来自分类Dev

在data.frame对象上使用aggregate()

来自分类Dev

使用列表形成data.frame

来自分类Dev

使用间隔分割data.frame

来自分类Dev

使用 data.table 将 data.frame 与 NA 聚合

来自分类Dev

在R中的data.frame列表中使用一个data.frame的指定列

来自分类Dev

使用另一个data.frame的行名对data.frame进行排序

来自分类Dev

将data.frame转换为data_frame(dplyr)后使用Tapply-R

来自分类Dev

data.table 与 data.frame 上的闪亮 R 过滤器 %in%

来自分类Dev

如何使用 Pandas Data Frame 在 python 3 中使用断言?

来自分类Dev

使用 Spring Data Projection 过滤

来自分类Dev

使用mapply组合data.frame中可变字段的数量

来自分类Dev

使用索引值访问Pandas Data Frame行

来自分类Dev

使用Acast时继续对data.frame进行排序

来自分类Dev

如何使用R DBI传递data.frame以进行UPDATE

来自分类Dev

用户提供的参数,用于使用ranging排序data.frame

来自分类Dev

错误:无法使用R函数进行转换:as.data.frame

来自分类Dev

使用with或内部更改data.frame中的值

来自分类Dev

使用名称向量从data.frame中选择行

来自分类Dev

使用knitr的data.frame单元格的类/ id

来自分类Dev

如何使用r省略data.frame中单词的倒数

Related 相关文章

热门标签

归档