- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我的最终目标是使用包 spatstat 计算数据帧列表的 Clark-Evans-Index (clarkevans.test
)。
所以我有一个我的点数据列表:
points.li <- list(structure(list(x.n = c(-1.37977544977995, 0.0787053126116266,
-6.50583075192879, -9.17021249875416, -19.4146851390704, -22.7380870106472,
-20.3267566111816, -15.7328116296655, -8.74750043303314, -11.8963575795747
), y.n = c(13.1276911114957, 2.22311850078447, 9.48873515598742,
2.7986686485412, 2.56632386092958, -0.757078010647191, 6.88269379207495,
11.5304629645448, 19.131978467755, 28.8757897612883)), row.names = 1098:1107, class = "data.frame", .Names = c("x.n",
"y.n")), structure(list(x.n = c(0.104714438623701, 1.93357872460516,
1.51117985822383, 4.47756948027361, 0.710996014054978, -0.727469791776916,
0.694499984379773, 2.88088318987335, -5.90066975026119, -11.3699018974284
), y.n = c(-5.99908617093835, -9.09677268682439, -12.3075722803524,
-16.7105167948009, -16.2844860117843, -13.8809505330886, -19.88787745768,
-20.4985490229505, -14.9797228445106, -17.1780479345837)), row.names = 108:117, class = "data.frame", .Names = c("x.n",
"y.n")))
> points.li
[[1]]
x.n y.n
1098 -1.37977545 13.127691
1099 0.07870531 2.223119
1100 -6.50583075 9.488735
1101 -9.17021250 2.798669
1102 -19.41468514 2.566324
1103 -22.73808701 -0.757078
1104 -20.32675661 6.882694
1105 -15.73281163 11.530463
1106 -8.74750043 19.131978
1107 -11.89635758 28.875790
[[2]]
x.n y.n
108 0.1047144 -5.999086
109 1.9335787 -9.096773
110 1.5111799 -12.307572
111 4.4775695 -16.710517
112 0.7109960 -16.284486
113 -0.7274698 -13.880951
114 0.6945000 -19.887877
115 2.8808832 -20.498549
116 -5.9006698 -14.979723
117 -11.3699019 -17.178048
以及绘图坐标列表:
ref.li <- list(structure(list(x.ref = c(-51.957519, -44.640527, 24.976003,
17.659011), y.ref = c(39.756418, -29.860112, -22.54312, 47.07341
)), class = "data.frame", row.names = c(NA, -4L), .Names = c("x.ref",
"y.ref")), structure(list(x.ref = c(15.613798, -52.306902, -35.372372,
32.548328), y.ref = c(40.306747, 23.372217, -44.548483, -27.613953
)), class = "data.frame", row.names = c(NA, -4L), .Names = c("x.ref",
"y.ref")))
> ref.li
[[1]]
x.ref y.ref
1 -51.95752 39.75642
2 -44.64053 -29.86011
3 24.97600 -22.54312
4 17.65901 47.07341
[[2]]
x.ref y.ref
1 15.61380 40.30675
2 -52.30690 23.37222
3 -35.37237 -44.54848
4 32.54833 -27.61395
我创建了一个 owin
对象列表:
library(spatstat)
bound.li <- lapply(ref.li, function(x) {owin(poly = list(x = x$x.ref, y = x$y.ref))})
> bound.li
[[1]]
window: polygonal boundary
enclosing rectangle: [-51.95752, 24.976] x [-29.86011, 47.07341] units
[[2]]
window: polygonal boundary
enclosing rectangle: [-52.3069, 32.54833] x [-44.54848, 40.30675] units
现在我想创建 ppp
对象:
pattern.li <- lapply(points.li, function(x) {ppp(x$x.n, x$y.n, window=bound.li)})
导致:
Error in verifyclass(window, "owin") :
argument ‘window’ is not of class ‘owin’
我不知道问题是使用了 owin 对象列表还是我错误地使用了 ppp 函数的 lapply,因为我需要在这里引用两个列表但不知道如何。任何提示如何解决这个问题?
(edit) 我也试过了
mapply(function(x, y) {ppp(x$x.n, x$y.n, window=y)}, x=points.li, y=bound.li)
但这不会返回 ppp 对象列表..
最佳答案
您将整个 owin
对象列表传递给 ppp
中的 window
参数。您可以使用 Map
同时迭代两个列表。当您尝试 mapply
时,它会自动简化结果。您还可以为 mapply
使用 SIMPLIFY=FALSE
参数:
Map(function(x, y) {ppp(x$x.n, x$y.n, window=y)}, x=points.li, y=bound.li)
#[[1]]
#Planar point pattern: 10 points
#window: polygonal boundary
#enclosing rectangle: [-51.95752, 24.976] x [-29.86011, 47.07341] units
#
#[[2]]
#Planar point pattern: 10 points
#window: polygonal boundary
#enclosing rectangle: [-52.3069, 32.54833] x [-44.54848, 40.30675] units
关于r - 使用 lapply 创建 ppp 对象(包 spatstat),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36009072/
我正在尝试从许多格式不整洁的 excel 电子表格中提取一些数据。我想我需要在 lapply 内运行 lapply,但似乎无法使其工作。这是一个例子: 这是两个数据框,其格式与我在 excel 表中找
显然,我仍然不完全理解 lapply 到底是如何工作的。当然,它对列表元素应用一个函数并返回一个列表。然而,当将它与自定义函数一起使用时,我不太确定如何有效地使用它。例如,我想在使用 dcast 的自
我创建了一个名为“列表”的数据框列表,并且只想选择列表中每个数据集的某些列。 library(dplyr) new_list <- lapply(list, select(list, Date)) 它
我想使用 lapply 同时运行四个多级模型(使用 lmer)。 将 lm() 与一个因变量和一组自变量一起使用的简单示例是: data(mtcars) varlist <- names(mtcars
我编写了一个函数,可以将字符输入转换为数字输出。 votedIndicated votedIndicated("V") [1] 1 > votedIndicated("D") [1] 0 但是,当我
简介 我一直在编写一个程序来处理一些原始数据,然后通过几个统计过程来传递它。总而言之,它使用了多个“lapply”实例。 例如 :在脚本的一部分中,我使用了一个称为 Maxstat 的函数(请注意,该
我有一个 list l ,具有以下特点: 它有 3 个元素 每个元素都是一个长度为 5 的数值向量 每个向量包含从 1 到 5 的数字 l = list(a = c(2, 3, 1, 5, 1), b
我有一个功能列表 functions flist arg arg [1] 6.123234e-17 > Funcall ## Compute log(exp(acos(cos(0)) > Re
我有一个字符向量中的 url 列表,我想暂停之间的过程 查询,因为如果不是 x 查询被拒绝。 urls=c('url1','url2','url3') 这是我想做的事 htmlpages=lapply
我有一个具有以下结构的 6 个列表,我正在尝试提取特定元素并将它们存储在数据 data.frame 中。 我已经应用了这个, lapply(rmseErrorsHyperparameters, '[[
关闭。这个问题需要debugging details .它目前不接受答案。 编辑问题以包含 desired behavior, a specific problem or error, and th
我正在阅读 Wickham 的 Advanced R 书。此问题与解决第 12 章 - 泛函中的问题 5 有关。该练习要求我们: Implement a version of lapply() tha
有没有办法使用lapply()以某种方式强制它在单步执行列表的下一个元素之前等待用户的“输入”?如果是这样,你能提供一个简单的例子吗? 最佳答案 这是示例: es <- list(1, 2, 3) l
我有一个我想摆脱的循环,但我也不太明白怎么做。假设我有一个数据框: tmp = data.frame(Gender = rep(c("Male", "Female"), each = 6),
我已经生成了一个模型列表,并想创建一个汇总表。 例如,这里有两个模型: x <- seq(1:10) y <- sin(x)^2 model1 <- lm(y ~ x) model2 <- lm(y
我在对数据帧列表运行稳健的线性回归模型(使用 MASS 库中的 rlm)时遇到问题。 可重现的示例: var1 <- c(1:100) var2 <- var1*var1 df1 <- data.f
我正在清理一组文本文件,目前将它们作为具有相同结构的数据框列表进行操作。 鉴于文本文件的结构,每个 df 中最终都会有一个不规则的单元格。该单元格包含一个包含列名和值的字符串。我需要提取该值并将其分配
我有一个包含字符数据的 data.frame,我希望最终得到一个具有相同列标题但每个值都有计数的矩阵。到目前为止,我可以获得一个我想要的维度的空矩阵,但是当我尝试用计数填充 myMatrix 时,它不
如何在 lapply 中指定多行语法。我的语法也没有替换第一行中的 text_query。提前谢谢你。 text_query<-lapply(text_query, function(x) { g
您可以通过运行重置数据框中的行名 >rownames(df) newlist <- llply(mylist, function(df) { rownames(df) <- NULL }) 但 tit
我是一名优秀的程序员,十分优秀!