R 使用“粘贴”矢量参考执行计算

R 使用“粘贴”矢量参考执行计算,r,for-loop,automation,paste,R,For Loop,Automation,Paste,因此,我有一些激光雷达数据,我想计算一些指标(我将在评论中附加一个数据链接)。 我也有地面图,我提取了周围的激光雷达点,因此每个图有几百个点(19个图)。每个点都有X、Y、Z、离地高度和关联的绘图 我需要在绘图级别上计算一组度量,因此我使用split(plotpts,plotpts$AssocPlot)创建了plotsgroupped 现在我有了一个数据框,每个绘图都有一个“页面”,所以我可以通过“绘图页面”计算我的所有度量。这对于单独的绘图非常有效,但我想让它自动化。(是的,我知道只有19个情

因此,我有一些激光雷达数据,我想计算一些指标(我将在评论中附加一个数据链接)。
我也有地面图,我提取了周围的激光雷达点,因此每个图有几百个点(19个图)。每个点都有X、Y、Z、离地高度和关联的绘图

我需要在绘图级别上计算一组度量,因此我使用
split(plotpts,plotpts$AssocPlot)创建了
plotsgroupped
现在我有了一个数据框,每个绘图都有一个“页面”,所以我可以通过“绘图页面”计算我的所有度量。这对于单独的绘图非常有效,但我想让它自动化。(是的,我知道只有19个情节,但这是它的原则,该死的!:-P)
到目前为止,我有一个for循环,它计算度量并将结果放入名为
results
的数据框中。我把这些组的名字也拉到了一个名为
groups
的列表中

for(i in 1:length(groups)){
Results$Plot[i] <- groups[i]
Results$Mean[i] <- mean(plotsgrouped$PLT01$Z)
Results$Std.Dev.[i] <- sd(plotsgrouped$PLT01$Z)
Results$Max[i] <- max(plotsgrouped$PLT01$Z)
Results$75%Avg.[i] <- mean(plotsgrouped$PLT01$Z[plotsgrouped$PLT01$Z <= quantile(plotsgrouped$PLT01$Z, .75)])
Results$50%Avg.[i] <- mean(plotsgrouped$PLT01$Z[plotsgrouped$PLT01$Z <= quantile(plotsgrouped$PLT01$Z, .50)])
...
and so on.
for(1中的i:长度(组)){
结果$Plot[i]尝试:

for(i in seq_along(groups)) {

  Results$Plot[i] <- groups[i] # character names of the groups
  tempZ = plotsgrouped[[groups[i]]][["Z"]]
  Results$Mean[i] <- mean(tempZ)
  Results$Std.Dev.[i] <- sd(tempZ)
  Results$Max[i] <- max(tempZ)
  Results$75%Avg.[i] <- mean(tempZ[tempZ <= quantile(tempZ, .75)])
  Results$50%Avg.[i] <- mean(tempZ[tempZ <= quantile(tempZ, .50)])

}
<代码>用于(我在序列中沿着(组)){ 结果$Plot[i]尝试:

for(i in seq_along(groups)) {

  Results$Plot[i] <- groups[i] # character names of the groups
  tempZ = plotsgrouped[[groups[i]]][["Z"]]
  Results$Mean[i] <- mean(tempZ)
  Results$Std.Dev.[i] <- sd(tempZ)
  Results$Max[i] <- max(tempZ)
  Results$75%Avg.[i] <- mean(tempZ[tempZ <= quantile(tempZ, .75)])
  Results$50%Avg.[i] <- mean(tempZ[tempZ <= quantile(tempZ, .50)])

}
<代码>用于(我在序列中沿着(组)){
结果$Plot[i]听起来像是
plyr
软件包的一项工作,但是在一个最小的模型数据集上讨论它会更容易,它说明了您想要做什么。另外,不要花太多时间尝试复杂的
eval(粘贴(…
R中的构造;它们总是表明有更好的方法解决您的问题。数据集是,我将致力于制作一个模型数据集。看起来像是一个类似的问题,但不幸的是没有答案。请参见
[[
作为
$
的编程替代方案。您可以通过键入
?“[[”进入帮助页面
。听起来像是
plyr
软件包的工作,但是在一个最小的模型数据集上讨论更容易,它可以说明您想要做什么。另外,不要花太多时间尝试复杂的
评估(粘贴(…
R中的构造;它们总是表明有更好的方法解决您的问题。数据集是,我将致力于制作一个模型数据集。看起来像是一个类似的问题,但不幸的是没有答案。请参见
[[
作为
$
的编程替代方案。您可以通过键入
?“[[”进入帮助页面
。谢谢!我觉得这与括号有关,但找不到一个3深度参考的例子。+3互联网给你,先生!你需要做的就是…非常仔细地阅读…?“[”…都在FM中。我从来没有想到
[
会有自己的帮助页面。:-STHANK YOU!我感觉它与括号有关,但找不到一个3深度参考的例子。+3 Internet给你,先生!你所需要做的就是…非常仔细地阅读…?“['…都在FM中。我从来没有想到,
[
会有自己的帮助页面。:-s