其他分享
首页 > 其他分享> > R dplyr 修改值-替换值

R dplyr 修改值-替换值

作者:互联网

有这么个需求:我有许多列,我打算找到某一列等于某个值,同时另外一列中等于某个值,这样的多个条件筛选的行,并替换筛选出来的这些这些值,显然使用dplyr包是最好的选择,因为速度快的飞起,即使我的数据有几百万行

代码如下:

df.v %>% filter(to.x == 999, to.y==999) %>%
      select(cnt,min ,max ,v_0.1,v_0.5,v_1) %>%
      replace(values = -2)

这样就把符合条件(to.x == 999, to.y==999)的所有行都挑出来了,但是只select了目标列(cnt,min ,max ,v_0.1,v_0.5,v_1),这6列符合条件的值统一用replace函数替换为了-2值

df.v %>% filter(cnt == -1) %>%
      select(cnt,min ,max ,v_0.1,v_0.5,v_1)  * 0.9

上面的代码时筛选出符合条件的所有行,然后找到打算替换的部分列,直接数学运算,乘以固定数0.9,这样就对这些选择了的值直接计算完毕了。

标签:cnt,dplyr,min,0.1,0.5,999,修改,替换,select
来源: https://www.cnblogs.com/arcserver/p/12038068.html