[R-es] Crear una variable tipo factor a partir de un vector de caracteres

Antonio Rodriguez Andres @nton|orodr|guez@ndre@70 @end|ng |rom gm@||@com
Mie Mar 6 15:09:47 CET 2019


Hola estimados miembros de la comunidad de R

Tengo un conjunto de datos, donde tengo observaciones por países y por año.
Una de las variables del dataframe es el nombre del país. Queremos dividir
los países, que son países africanos de acuerdo a 5 regiones: norte de
africa, africa del este, sur africa, etc

Yo lo que he hecho ha sido crear vectores con el nombre de cada uno de los
países en cada uno de ellos, por ejemplo este de Africa Central,

ca <- c("Angola", "Cameroon", "Cabo Verde", "Central African Republic",
"Chad","Equatorial Guinea", "Eritrea", "Ethiopia",
        "Gabon", "Sao Tome and Principe")
class(ca)
character

luego hice un ifelse para crear una variable binaria 1 si es pais de
Central Africa y cero sino lo es

afdata$Country.centralafrica <- ifelse(afdata$Country %in% ca,1,0)

Sin embargo, para el análisis podría ser más interesante crear una variable
nueva por ejemplo region y tratarla como factor,. Mi pregunta es como
podria pasar esos 5 vectores con el nombre de los paises de cada region a
una sola variable tratada como un factor y con esos 5 niveles ( 5
regiones). Lo que he tratado es de hacer esto para genera una nueva
variable en el dataframe, pero me da que todo es igual false, en el valor,

afdata$region <- with(afdata,{
  (Country == "ca" |Country == "na" | Country == "sa" | Country == "wa" |
Country == "ea")
})
Debo de indicar otra condición?

Agradezco alguna pista

-- 

Member, Editorial Committee, *The Economic and Labour Relations Review* (a
SAGE journal)

http://elr.sagepub.com/

Member, Editorial Committee, African Journal of Economic and Management
Studies

http://emeraldgrouppublishing.com/products/journals/editorial_team.htm?id=ajems

https://www.researchgate.net/profile/Antonio_Andres (Research Gate profile)

	[[alternative HTML version deleted]]



Más información sobre la lista de distribución R-help-es