Olá Lourenço, tudo bem?
O erro acontece porque você está tentando usar if_any()
dentro de select()
, mas o if_any()
só funciona dentro de verbos que fazem data-masking, como filter()
, mutate()
, summarise()
, etc. A função select()
não é compatível com if_any()
dessa forma.
Para resolver isso, você pode usar filter()
em vez de select()
quando quiser aplicar condições às linhas com base nos valores das colunas. Por exemplo, se você deseja filtrar linhas onde a coluna b
é igual a 1, você pode fazer assim:
library(dplyr)
df2 <- data.frame(a = 1:5, b = c(1, 1, 1, 2, 2), c = 11:15)
# Filtrando linhas onde qualquer valor na coluna b é igual a 1
filtered_df <- df2 %>%
filter(if_any(everything(), ~ . == 1))
Se a intenção é selecionar colunas com base em uma condição, você pode precisar de uma abordagem diferente, como usar select()
com funções auxiliares para padrões de nomes ou tipos de colunas.
Espero ter ajudado.
Qualquer dúvida que surgir, compartilhe no fórum.
Abraços e bons estudos!
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!