2016-03-25 98 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