Как изменить имя отдельной ячейки в фрейме данных шейп-файла в R? - PullRequest
0 голосов
/ 29 января 2020

Я работаю с данными о выборах в Мозамбике. В настоящее время я наблюдаю за явкой избирателей и доминированием партии. У меня есть два отдельных фрейма данных: шейп-файл для построения карты с использованием пакета sf и фрейм данных с явкой избирателей и т. Д. c.

Мне удалось решить проблему акцентов в обоих кадрах данных с помощью iconv, но я обнаружил, что некоторые районы имеют разные имена в шейп-файле по сравнению с голосующим df.

Например: Xai_Xai (район в провинции Газа) называется Cidade de Xai_Xai в шейп-файле, но просто Xai_Xai в избирателе. Я хотел бы последнее, поэтому я хочу изменить имя этой ячейки на «Xai_Xai». Вот что я попробовал. Столбец был фактором, поэтому я изменил его на символ, не уверенный, правильно ли это сделать?

summary(moz_dist)

   Shape_Leng      Shape_Area          ADM2_PT            ADM2_PCODE          ADM1_PT  
 Min.   :0.114   Min.   :0.0006967   Length:159         MZ0101 :  1   Nampula     :23  
 1st Qu.:2.708   1st Qu.:0.2053424   Class :character   MZ0102 :  1   Zambezia    :23  
 Median :3.753   Median :0.3722152   Mode  :character   MZ0103 :  1   Niassa      :19  
 Mean   :3.637   Mean   :0.4216331                      MZ0104 :  1   Cabo Delgado:17  
 3rd Qu.:4.737   3rd Qu.:0.5841029                      MZ0105 :  1   Tete        :15  
 Max.   :7.797   Max.   :1.4952281                      MZ0106 :  1   Gaza        :14  
                                                        (Other):153   (Other)     :48  
   ADM1_PCODE       ADM0_EN          ADM0_PT    ADM0_PCODE      date           
 MZ07   :23   Mozambique:159   Moçambique:159   MZ:159     Min.   :2019-04-02  
 MZ11   :23                                                1st Qu.:2019-04-02  
 MZ08   :19                                                Median :2019-04-02  
 MZ01   :17                                                Mean   :2019-04-02  
 MZ10   :15                                                3rd Qu.:2019-04-02  
 MZ02   :14                                                Max.   :2019-04-02  
 (Other):48                                                                    
    validOn                    geometry      dist0          
 Min.   :2019-06-07   MULTIPOLYGON :159   Length:159        
 1st Qu.:2019-06-07   epsg:4326    :  0   Class :character  
 Median :2019-06-07   +proj=long...:  0   Mode  :character  
 Mean   :2019-06-07                                         
 3rd Qu.:2019-06-07                                         
 Max.   :2019-06-07 

«dist0» - это столбец со всеми названиями районов (без акцентов). Строка имеет номер 36.

moz_dist[36, moz_dist$dist0 == "Cidade De Xai-Xai"] <- "Xai_Xai" 

Error in if (jj <= nvars) { : missing value where TRUE/FALSE needed

moz_dist$dist0[36 , moz_dist$dist0 == "Cidade De Xai-Xai"] <- "Xai_Xai"

Error in moz_dist$dist0[36, moz_dist$dist0 == "Cidade De Xai-Xai"] <- "Xai_Xai" : 
incorrect number of subscripts on matrix

Как изменить имя этой ячейки?

...