2016-12-02 16 views
0

我从我的数据文件使用此synthax汇总表中插入值:如何在表

sumtab <- as.data.frame(table(S$MONTH)) 
colnames(sumtab) <- c("Month", "Frq") 
rownames(sumtab) <- c("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug", 
        "Sep","Oct","Dec") 

此表sumtab所得:

Month Frq 
Jan 1  3 
Feb 2  5 
Mar 3 16 
Apr 4 45 
May 5 11 
Jun 6 16 
Jul 7 99 
Aug 8 101 
Sep 9 45 
Oct 10 456 
Dec 12 112 

而这个脚本产生ggplot:

ggplot(sumtab, aes(x=Month,y=Frq),width=1.5) + 
    scale_y_continuous(limit=c(0,17),expand=c(0, 0)) + 
    geom_bar(stat='identity',fill="lightgreen",colour="black") + 
    xlab("Month") + ylab("No of bears killed") + 
    theme_bw(base_size = 11) + 
    theme(axis.text.x=element_text(angle=0,size=9)) 

问题是在我的数据中没有11月份的值,我需要以某种方式输入零11月份在桌上。对于大多数人来说,这可能是一件简单的事情,而且我试图在其他问题上进行搜索,并且我已经搜索并阅读了这些书籍,但无法找到正确的合成词。需要一些帮助。

添加rbind到脚本:

sumtab <- as.data.frame(table(S$MONTH)) 
sumtab <- rbind(sumtab, c(11, 0)) 

生成此错误消息:

Warning message: 
In `[<-.factor`(`*tmp*`, ri, value = 11) : 
    invalid factor level, NA generated 

蚂蚁这个表:

Var1 Freq 
1  1 3 
2  2 5 
3  3 6 
4  4 14 
5  5 7 
6  6 2 
7  7 13 
8  8 12 
9  9 3 
10 10 1 
11 12 4 
12 <NA> 0 

所以感谢@PaulH您的帮助,但我很可能以错误的方式使用了你的帮助。

回答

1

你可以使用rbind命令添加十一月行:

sumtab <- rbind(sumtab, Nov = c(11, 0)) 

祝你好运!