Saya memiliki kerangka data, df_ret, yang mencakup pengembalian harian untuk saham dengan ID. Itu setiap hari, jadi itu memberi saya 1762 baris. Ini dari 2010-01-04 hingga 30-12-2016. > kepala(df_ret) tanggal permanen ...

0
deeplyr 5 April 2021, 23:16

1 menjawab

Jawaban Terbaik

Dari apa yang saya pahami, Anda ingin menggabungkan 2 kerangka data, lalu memfilter untuk mendapatkan baris yang relevan dan kemudian mengelompokkan dengan menggunakan ddply di ret

library(dplyr)

df_temp <- merge(df_ret,df_fun)
df_temp<-df_temp[ ((df_temp$datadate - df_temp$date)<366)&((df_temp$datadate - df_temp$date)>0),]

df_merged <-ddply(df_temp,c('id', 'weight','fyear','fyr'), summarize,
at=mean(at),
sale=mean(sale), 
sich=mean(sich),
return = prod(1+ret) -1 )
0
Ashish Baid 5 April 2021, 21:08