3
如何用Tidyverse
替换R中某个子集的值?使用Tidyverse替换R中的子集
使用cars
数据作为一个例子,如果我想改变所有超过30到0下的speed
,我可以使用下面的命令:
cars[cars["speed"] < 30,] <- 0
随着Tidyverse
,可以产生相同的子集更可读命令:
cars %>% filter(speed < 30) %>% mutate(speed =0)
然而,这是改变数据的子集,我们从cars
中取出,观察不值内cars
。
我可能错过了一些明显的东西,但是有没有一种直观的方式可以用Tidyverse
做同样的事情?虽然cars[cars["speed"] < 30,] <- 0
在大多数情况下都能正常工作,但如果有5个以上的条件可以满足,它变得非常不便。
我想这可能是当你不SHLD试图让一切“整洁”的情况下。 'replace'就是'x [list] < - values',这几乎就是你所做的,而且它是 - IMO - 就像可读性和抽象性一样。 – hrbrmstr