请允许我在前言中说我是R的新手。我清理了一些收入和租金变量,现在我正在尝试将我的种族变量从9个类别重新编码为2.原始变量编码如下:
1 =白色2 =黑色3 =原生4 =亚洲5 = A 6 = B 7 = C 8 = D 9 = E.我基本上试图消除所有其他种族,只保留白色和黑色作为虚拟变量,其中白色= 0,黑色= 1。这是代码:
library(foreign)
library(ggplot2)
df<-read.dta("acs2010.dta")
View(df)
attach(df)
summary(df)
inctot[inctot==9999999]<-NA
inctot[inctot<=0]<-NA
summary(inctot)
incomesq<-(inctot)^2
rent[rent==0]<-NA
summary(rent)
levels(race)[1]<-"White"
levels(race)[2]<-"Black"
levels(race)[3:9]<-NA
levels(race)
ggplot(data=df,aes(x=race))+geom_bar()
view(df)
操纵关卡会给我留下“白色”和“黑色”,但是当我绘制它时,它也会显示NA。我不知道如何摆脱因子变量中的NA。任何想法都将不胜感激。
答案 0 :(得分:0)
问题中重新编码race
因子的方法看起来不错。
这里的真正问题似乎是忽略了情节中的NA
s。只是数据框的子集:
ggplot(data =
的 df[!is.na(df$race),]
强> , aes(x=race)) + geom_bar()
进一步阅读: