Tôi đang cố gắng tính toán lợi nhuận theo trọng số theo loại nội dung. Đối với cuộc sống của tôi, tôi không thể tìm ra cách để làm điều đó bằng cách sử dụng lệnh tổng hợp.Tổng hợp và có trọng số trung bình trong R
khung dữ liệu của tôi trông như thế này
dat <- data.frame(company, fundname, assetclass, return, assets)
Tôi đang cố gắng để làm một cái gì đó tương tự (không sao chép này, đó là sai):
aggregate(dat, list(dat$assetclass), weighted.mean, w=(dat$return, dat$assets))
Nó hoạt động như một sự quyến rũ. Lần đầu tiên tôi thử nó, tôi đã thay thế x trong hàm bằng dat (trả về cùng một số cho mỗi lớp nội dung). Bất kỳ ý tưởng nào tại sao điều này sẽ không hoạt động với lệnh tổng hợp? –
Có vẻ như 'aggregate' tổng hợp mọi cột mà bạn mong muốn tính toán qua hai cột. Tôi nghĩ một lúc trước tôi dùng 'doBy' hoặc một cái gì đó giống như nó - nhưng hey,' plyr' làm cho nó dễ dàng hơn và có các chuông và còi khác. –
Bạn vẫn cần phải tìm hiểu về 'tóm tắt';) – hadley