R Version 2.11.1 32-bit auf Windows 7
Ich erhalte die Daten train.txt wie unten dargestellt:
USER_A USER_B ACTION
1 7 0
1 8 1
2 6 2
2 7 1
3 8 2
Und ich gehe mit den Daten nach dem unten stehenden Algorithmus um:
train_data=read.table("train.txt",header=T)
result=matrix(0,length(unique(train_data$USER_B)),2)
result[,1]=unique(train_data$USER_B)
for(i in 1:dim(result)[1])
{
temp=train_data[train_data$USER_B%in%result[i,1],]
result[i,2]=sum(temp[,3])/dim(temp)[1]
}
Das Ergebnis ist die Punktzahl für jeden BENUTZER_B in train_data. Die Punktzahl ist definiert als:
Punktzahl von BENUTZER_B=(die Summe aller AKTIONEN von BENUTZER_B)/(die empfohlenen Zeiten von BENUTZER_B)
aber die train_data ist sehr groß, es kann mich drei Tage dauern, um dieses Programm zu beenden, so dass ich hierher kommen, um um Hilfe zu bitten, könnte dieser Algorithmus verbessert werden?