Примените функцию к каждой строке в data.frame и добавьте результат в data.frame в R

Похоже, я должен либо знать, как это сделать, либо, по крайней мере, найти ответ здесь или где-то еще. К сожалению, ни один из них не работает.

У меня есть фрейм данных о клиентах, в котором один столбец - это их идентификатор, а другой - их полный адрес. Я хочу добавить 3 столбца для каждой строки с кодом широты, долготы и округа из поиска геокода.

Этот фрейм данных выглядит как

customer_id       fulladdress
     1            123 Main St., Anywhere, FL
     2            321 Oak St., Thisplace, CA

Я создал функцию геокодирования, которая принимает полный адрес и возвращает фрейм данных со столбцами lat, long и county.

Как я могу применить мою функцию геокодирования к каждой строке фрейма данных и добавить результаты в виде трех столбцов в существующий фрейм данных, чтобы он выглядел следующим образом:

customer_id       fulladdress                      lat        long     county
     1            123 Main St., Anywhere, FL     33.2345    -92.3333   43754
     2            321 Oak St., Thisplace, CA     25.3333    -120.333   32960

Я пробовал играть с apply и ddply, но Кажется, я не могу понять, что делает кто-то из них. Я пробовал это с помощью ddply, но все, что он делает, это возвращает мне исходный фрейм данных.

ddply(customers[1:3,], .(fulladdress), function(x) { geocode(x$fulladdress)})

Спасибо за помощь.

8
задан epo3 29 July 2016 в 17:51
поделиться