В SpatialDataFrame у меня есть следующая структура данных.
> str(shapedata_trans@data)
'data.frame': 4066 obs. of 6 variables:
$ OBJECTID : num 1 2 3 4 5 6 7 8 9 10 ...
$ PC4 : Factor w/ 4066 levels "1011","1012",..: 1 2 3 4 5 6 7 8 9 10 ...
$ Aantal_mul: Factor w/ 11 levels "1","10","12",..: 1 1 5 7 1 1 5 1 1 1 ...
$ Aantal_adr: Factor w/ 2653 levels "1","10","100",..: 2404 2599 320 383 97 2604 60 211 63 1450 ...
$ Shape_Leng: num 5908 5489 19421 15356 4733 ...
$ Shape_Area: num 1034025 1214502 5075544 2674418 770406 ...
И в дополнение к этому есть дополнительная информация о многоугольниках и их координатах ... И это здорово. Однако, чтобы свести это к простой таблице, мы можем использовать ggplo2 :: fortify или broom :: tidy.
> fort_PC = fortify(shapedata_trans)
> head(fort_PC)
long lat order hole piece group id
1 4.906544 52.37910 1 FALSE 1 0.1 0
2 4.906733 52.37906 2 FALSE 1 0.1 0
3 4.906739 52.37908 3 FALSE 1 0.1 0
4 4.907138 52.37901 4 FALSE 1 0.1 0
5 4.908692 52.37881 5 FALSE 1 0.1 0
6 4.909105 52.37875 6 FALSE 1 0.1 0
Однако я хочу добавить информацию в части @data в эту окончательную таблицу. Информация, такая как столбцы PC4, Aantal_mul, Aantal_adr, Shape_Area и Shape_Leng. Я знаю, что в fortify / tidy я могу указать регион, сказав
> head(fortify(shapedata_trans,region = c("PC4")))
long lat order hole piece id group
1 4.906544 52.37910 1 FALSE 1 1011 1011.1
2 4.906733 52.37906 2 FALSE 1 1011 1011.1
3 4.906739 52.37908 3 FALSE 1 1011 1011.1
4 4.907138 52.37901 4 FALSE 1 1011 1011.1
5 4.908692 52.37881 5 FALSE 1 1011 1011.1
6 4.909105 52.37875 6 FALSE 1 1011 1011.1
Но от этого не становится лучше. у кого-нибудь есть решение?