44

Rでリスト内包表記を実装する方法はありますか?

Pythonのように:

sum([x for x in range(1000) if x % 3== 0 or x % 5== 0])

Haskellでも同じ:

sum [x| x<-[1..1000-1], x`mod` 3 ==0 || x `mod` 5 ==0 ]

これをRに適用する実際的な方法は何ですか?

ニック

4

9 に答える 9

39

このようなもの?

l <- 1:1000
sum(l[l %% 3 == 0 | l %% 5 == 0])
于 2013-04-14T11:56:56.087 に答える
3

そして、(一種の) scala の for-comprehension:

for(i in {x <- 1:100;x[x%%2 == 0]})print(i)
于 2013-09-20T16:20:26.727 に答える