Докато пишех функции за удобство за subset(), попаднах в странна ситуация, при която използването на еквивалентни логически изрази връща различни подмножества. Така например:
dat = data.frame(ttl.stims = c(4,4,8,8), change = c('big', 'small'))
dat
ttl.stims = 4
#logical statements are equivalent
dat$ttl.stims == 4
dat$ttl.stims == ttl.stims
#subset evaluates differently
subset(dat, dat$ttl.stims == 4)
subset(dat, dat$ttl.stims == ttl.stims)
Работя около това, като правя:
index = dat$ttl.stims == ttl.stims
subset(dat, index)
Но съм толкова любопитен защо първите две подмножества не дават идентични резултати! Идеи? мисли? Понтификации?
?subset
: Предупреждение: ... по-специално нестандартната оценка на аргумента „подмножество“ може да има непредвидени последици. - person Joshua Ulrich   schedule 05.06.2012\[
е по-добро отsubset
? - person joran   schedule 05.06.2012