【发布时间】:2017-02-26 18:36:42
【问题描述】:
我有一个对象列表:area$X1,area$X2,area$X3,area$X4, ...area$X100。每个对象的类都是数字的。这些对象是从 SpatialPixelsDataFrame 的结果中提取的。我已经计算了1到100不同动物轨迹的缓冲区。
例如。面积$X1 是 0,0,0,0,0,0,1,1,1,1,1,0,1,1,0,0,0,0,0 我想统计area$X1中1的个数,所以我用了命令
table<-table(area$X1)
0 1
600097 1504
#extract the number of 1s
table[[2]]
这给了我 1504
这将给出 1 的数量,从而给出缓冲区的大小。
但是,我想对所有其他对象执行相同的操作,从 area$X2 到 area$X100。并计算整体 1 的平均数。我想自动化这个过程。我该怎么做?
目前,我所做的是创建一个名称列表
names<-paste("area$X",1:100,sep="")
虽然我得到了我想要的名称列表,但“名称”中的元素类是字符。
names: "area$X1" "area$X2" "area$X3" "area$X4" "area$X5" "area$X6" "area$X7"
..."area$X99" "area$X100"
class(names[1]): "character"
"area$X1" 不再是我想要的数字。要添加,现在如果我尝试命令:
table(names[1])
area$X1
1
它不会是一张由 0 和 1 组成的表格。它只包含一个元素,即名称“area$X1”。
我尝试删除引号,但没有帮助。
谁能帮我解决这个问题? 谢谢!!!
【问题讨论】:
标签: r class object character numeric