require(plyr)
require(dplyr)
set.seed(8)
df <-
data.frame(
v1 = runif(10, -1,1),
v2 = runif(10, -1,1))
Problem: Jak mogę uzyskać poprawne wartości do funkcji min()
jako część mutate()
- w zasadzie, chciałbym przypisać v3
jak v1
podzielony z najmniejszym z v1
i v2
. Ta praca nie robi:R: użyć min() w ciągu dplyr :: mutacji()
df <-
df %>% mutate(v3=ifelse(v1 !=0, v1/min(v1,v2), 0))
Myślę, że jestem brakuje czegoś naprawdę proste.
Możesz użyć 'pmin' czyli' transform (df, v3 = ifelse (v1! = 0, v1/do.call (pmin, df), 0)) ' – akrun
Dowolny szczególny powód, dla którego ładujesz tutaj pakiet' plyr' ? Nie pamiętam, który powinien być załadowany jako pierwszy, ale w tym przypadku nie powinieneś ładować 'plyr' w ogóle. –
Najpierw normalnie plyr, ale tutaj można załadować tylko dplyr. – user3375672