【发布时间】:2014-11-21 17:29:26
【问题描述】:
我有一个名为fin的数据框:
str(fin)
'data.frame': 158 obs. of 9 variables:
$ Species : chr "TRAT" "TRAT" "TRAT" "WRAT" ...
$ Site : chr "BAN" "BEX" "BEX" "BEX" ...
$ Year : chr "2011" "2010" "2011" "2012" ...
$ FR.CoYear: num 35.7 123.6 136.4 215.8 145.2 ...
$ Sample : int 31 NA 929 809 NA NA NA 30 215 NA ...
$ Young : num 16 NA 828 709 NA NA NA 45 235 NA ...
$ SiteYear : Factor w/ 65 levels "BAN 2011","BAN 2012",..: 1 4 5 6 7 1
我想为$Species 中的 5 个物种分别绘制 FR.CoYear 和 (fin$Young / fin$Sample)。
我尝试了here建议的方法;但目前没有一个工作,我将非常感谢指导 - 这只是一个语法问题吗?
这是我尝试过的:
with(subset(fin,fin$Species == "TRAT"), plot(fin$FR.CoYear, fin$Young /fin$Sample))
## runs without error but no plot is produced
with(fin[fin$Species == "TRAT",], plot((fin$FR.CoYear, fin$Young / fin$Sample))
##gives the error: unexpected ',' in "with(fin[fin$Species == "TRAT",], plot((fin$FR.CoYear,"
plot(fin$FR.CoYear[fin$Species == "BLKI"],fin$Young / fin$Sample[fin$Species == "BLKI"])
##Error in xy.coords(x, y, xlabel, ylabel, log) :
'x' and 'y' lengths differ
如果这是非常基本的,我深表歉意,但我正在自学 R。
【问题讨论】:
-
为了将来参考,如果您提供reproducible example,会更容易帮助您。在这种情况下,这意味着您的数据样本(除了您已经提供的代码和解释)。