2016-03-25 99 views
-1

我有一个数据帧,我在其中创建了一个变量(data$adtype),表示广告的色调是正面还是负面。所以,如果它是正面的,那么广告得到一个零,否则广告得到一个1.所以,我正在做一个adtype的条形图,但是我按照状态对数据进行了子集划分。所以,例如(data$adtype[data$state=="NY"])。对于既有正面广告又有负面广告的州,它会正确绘制图表。问题在于,对于只播出积极广告的国家来说,它会绘制单个条形图,甚至不会在图表上包含其他变量。在R中绘制二元变量

当我做table(data$adtype[data$sate=="NY"]),例如 它可能会说:

0  1 
2500 3000 

这意味着有2500个正广告和3000个负面广告,它会绘制两个酒吧。现在

,如果新泽西只有积极的广告,并没有负面广告

table(data$adtype[data$sate=="NJ"]) 

我希望这个代码返回以下

0  1 
500 0 

那里有500个正面广告0负广告。

而是返回这个

0 
500 

,它甚至不会放在桌上的其他价值,也不会绘制它。

我想要生成一个图表,它在x轴上既有二进制值0,也有1,并且即使其中一个值有零个广告,它仍会将其包含在图表中。

希望这是有道理

+1

请发表您通过dput数据 – adaien

回答

1

让你的变量factor

set.seed(1) 
x <- rbinom(100, 1, .50) 
x <- as.factor(x) 
par(mfrow=c(1,2)) 
barplot(table(x)) 
barplot(table(x[x==1])) 

默认情况下,table没有删除未使用因子水平:

enter image description here