podzielić i połączyć według czynników w nowe kolumny
Mam dane wyjściowe sql do pliku data.frame, który wygląda tak:
dateTime resultMean SensorDescription
1 2009-01-09 21:35:00 7.134589 Aanderaa Optode - Type 3835
2 2009-01-09 21:35:00 7.813000 Seabird SBE45 Thermosalinograph
3 2009-01-09 21:35:00 8.080399 Turner SCUFA II Chlorophyll Fluorometer
4 2009-01-09 21:35:00 7.818604 ADAM PT100 PRT
5 2009-01-09 21:36:00 7.818604 ADAM PT100 PRT
Chcę przekształcić go w ramkę w taki sposób:
dateTime Aanderaa Optode - Type 3835 Seabird SBE45 Thermosalinograph Turner SCUFA II Chlorophyll Fluorometer ADAM PT100 PRT
1 2009-01-09 21:35:00 7.134589 7.813000 8.080399 7.818604
Obecnie mam funkcję, która dzieli się przez SensorDescription, a następnie pętle na liście z scaleniem. Czy jest lepszy sposób na zrobienie tego za pomocą wbudowanych funkcji? Spojrzałem na plyr, ddply itp. I nic nie szczy, by zrobić to, co chcę.
obecne funkcje scalania pętli wyglądają tak:
listmerge = function(datalist){
mdat = datalist[[1]][1:2]
for(i in 2:length(datalist)){
mdat = join(mdat,datalist[[i]][1:2], by="dateTime", match = "all")
}