簡體   English   中英

在整個小標題中替換值

[英]replace values throughout a tibble

在基本RI中,可以使用以下代碼刪除/替換整個數據幀中的值(例如,所有NA或大於0.99的值)。

df[df > 0.99] <- NA
df[is.na(df)] <- 0L

有沒有辦法在tidyverse中使用dplyr執行等效操作?

您可以將mutate_allreplace一起replace

df = data.frame(x = c(1.2, 0.4, NA, 0.6), y = c(NA, 0.3, 0.992, 0.5))
df %>% mutate_all(~ replace(., . > 0.99 | is.na(.), 0))
#    x   y
#1 0.0 0.0
#2 0.4 0.3
#3 0.0 0.0
#4 0.6 0.5

或使用funs

df %>% mutate_all(funs(replace(., . > 0.99 | is.na(.), 0)))

如果您只需要將此集成到管道中,則replace方法應該起作用:

df %>% replace(. > 0.99 | is.na(.), 0)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM