【问题标题】:R data frame manipulation pointers, conditional data manipulationR数据帧操作指针,条件数据操作
【发布时间】:2023-01-20 17:20:02
【问题描述】:

我再次遇到了那些在 R 中似乎不必要地烦人的“简单”数据操作之一。我有一个大数据集,想根据两列的值删除数据框中的行。

我需要的是在 y=z 时开始删除行,然后在 z 的值更改时停止删除行。要删除的行数各不相同,我需要对数据框中的所有行重复此操作。

Original structure,Ideally result

我意识到那里可能已经有上百万个类似的线程,但我已经浪费了足够多的时间来尝试挖掘基本教程。我也对有关使 R 中的数据框操作更简单的包的一般提示感兴趣,我使用诸如 mutate 和 tidyr 之类的东西,但是有什么实际上可以使这些操作不那么烦人吗?

谢谢

【问题讨论】:

  • 请提供足够的代码,以便其他人可以更好地理解或重现问题。
  • 你有没有试过......基地R? :) 如果您可以制作一个可重现的小示例,也许我们可以解决这个问题。

标签: r dataframe conditional-statements


【解决方案1】:

tidyverse 和 filter 的方法怎么样?这是两个变量同时不等于 4 的测试数据:

library(tidyverse)
mtcars %>% filter(!(gear == 4 & carb == 4))
                     mpg cyl  disp  hp drat    wt  qsec vs am gear carb
Datsun 710          22.8   4 108.0  93 3.85 2.320 18.61  1  1    4    1
Hornet 4 Drive      21.4   6 258.0 110 3.08 3.215 19.44  1  0    3    1
Hornet Sportabout   18.7   8 360.0 175 3.15 3.440 17.02  0  0    3    2
Valiant             18.1   6 225.0 105 2.76 3.460 20.22  1  0    3    1
Duster 360          14.3   8 360.0 245 3.21 3.570 15.84  0  0    3    4
Merc 240D           24.4   4 146.7  62 3.69 3.190 20.00  1  0    4    2

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-12-22
    • 1970-01-01
    • 2019-03-23
    • 2021-10-01
    • 2021-08-01
    • 1970-01-01
    • 2013-09-10
    • 1970-01-01
    相关资源
    最近更新 更多