3

これは1か月も経たないうちに機能しました。何か変わった?(簡単なサンプルを追加):

adk47サンプル

PeakName Elevation
Marcy      5344
Marcy      5344
Marcy      5344
Marcy      5344
Marcy      5344
Marcy      5344
Marcy      5344
Algonquin      5114
Algonquin      5114
Algonquin      5114

> require(plyr)
Loading required package: plyr
> adk.need.fr.round.6 <- ddply(adk47sample, .(PeakName, Elevation),
+   summarize, needThese=if(length(PeakName) < 6) "needThis")

Error in class(output[[var]]) <- class(value) : 
  attempt to set an attribute on NULL

この簡単な例では、次のことを期待していました。

> adk.need.fr.round.6
      PeakName     Elevation needThese
1     Algonquin      5114     needThis
4

1 に答える 1

3

@joranが示唆するように結果plyrを与えると、バージョン1.8で機能します(同じエラーが発生します):elsecharacter(0)else NULL

adk.need.fr.round.6 <- ddply(adk47sample, 
.(PeakName, Elevation),summarize, 
  needThese=if(length(PeakName) < 6) "needThis" else character(0))
于 2012-12-27T19:39:08.647 に答える