2014-11-25 33 views
4

我是R的新手,并从网上提供了一些有关csv国家的测试数据。我现在正在绘制阴谋,并在制作世界失业率饼图时遇到上述错误。R - 馅饼,X值必须为正值

我发出以下内容:

>values <- read.csv("D:\\test\\countrydata.csv") 
>names(values) 
[1] "name" "size" "pop" "unemployed" ... 
>typeof(values$unemployed) 
"integer" 
>pie(values$pop) 
Error in pie(values$unemployed) : 
    'x' values must be positive 
>pie(values$pop, na.rm=TRUE) 
Error in pie(values$unemployed, na.rm=TRUE) : 
    'x' values must be positive 

我要绘制的数据集是一个整数集,所有的人都为正,0(感谢金)或NA。

0绘制的整数时,都没有问题,我试图

>pie(as.integer(c(0,1,2,3)) 

它工作得很好。

我在这里失踪了什么?

感谢和问候,

BillDoor

+2

奇怪。你做'饼(价值$弹出)'和错误消息说'错误饼(价值$失业)'?你想要一个“流行”的饼图,错误是“失业”?真? “NA”值问题来自 – Spacedman 2014-11-25 08:42:42

+2

。试试'pie(as.integer(c(0,1,2,3,NA)))',你会得到相同的错误...(并且饼函数中没有'na.rm'参数.. 。) – Cath 2014-11-25 08:47:22

+0

...并且'pie'没有'na.rm = TRUE'参数。而且由于'pie'作为图形参数吸引了无与伦比的参数,因此不会将其视为错误。教训:仅仅因为一个R函数有一个有用的'na.rm'参数,并不意味着它们都有。不要指望R一致,总是阅读文档! – Spacedman 2014-11-25 08:50:32

回答

3

我没有访问您的数据,但在我的经验,以下可能有助于绝对是值得一试:

pie(table(values$unemployed)) 

会爱了解这是否解决了您的问题!