Другим способом, используя sapply
, циклически перебирая каждую строку в x
, мы подбираем соответствующие строки из y
и берем mean
из них.
x$mean_value <- sapply(seq_len(nrow(x)), function(i) mean(y[unlist(x[i,]),]))
x
# start end mean_value
#1 1 2 0.3188163
#2 3 4 0.7405306
Я чесал бы habtm в отдельный образцовый класс, ImageLink. Затем Вы добрались бы:
Project
has_many :image_links, :as => :resource
BlogPost
has_many :image_links, :as => :resource
ImageLink
belongs_to :image
belongs_to :resource, :polymorphic => true
Image:
has_many :image_links