У меня есть два набора данных Excel.Один из них довольно большой, с почти 837 000 анонимных наблюдений для 197 переменных, а другой является подмножеством большого набора данных, с дополнительным столбцом для неанонимизированных данных, но только около 10 переменных.Я хочу к.Определите и сопоставьте записи из меньшего набора данных с тем же в большем наборе данных, используя 5 общих переменных, а затем b.скопируйте всю строку для общей записи из большего набора данных на другой лист.
Как лучше всего это сделать в R?Кроме того, при создании третьего выходного листа, как создать строку переменных, не вводя каждую из 197 переменных из большого набора данных отдельно?
Я попытался создать цикл для пяти переменных, но я не уверено том, как скопировать общие записи на другой лист.
#load xls file
wb<-loadWorkbook("BER Dataset 2019")
#get sheet names of file
BERWhole <-getSheets(wb)
#load each sheet in seperate list element
dat <- lapply(seq_along(lp),function(i) readWorksheet(wb,sheet=lp[i]))
#convert all data to one data frame by merging individual data frame
dat2 <- Reduce(function(...) merge(..., by="Number"), dat)
#create new sheet to export data
createSheet(wb, name = "Connected Houses to BER data")
#save workbook
saveWorkbook(wb)
for (i in 1:rows) {
if (Non-anonymised [i, "Building_energy_rating"] = Anonymised[i, "BerRating"] &
Non-anonymised [i, "Floor_area"] = Anonymised[i, "GroundFloorArea(sq m)"] &
Non-anonymised [i, "CO2_emissions_indicator"] = Anonymised[i, "CO2Rating"] &
Non-anonymised [i, "Dwelling_type"] = Anonymised[i, "DwellingTypeDescr"] &
Non-anonymised [i, "Year_of_construction"] = Anonymised[i, "Year_of_Construction"]){
writeWorksheet(wb,dat2[,c("Number","res")],sheet="Connected Houses to BER data")
}
}
Я ожидаю, что цикл идентифицирует общие записи в обоих наборах данных, но не уверен относительно того, что нужно включить в цикл, чтобы это произошло.