You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何提取spdep包中localG对象的相关变量?

如何从spdep的localG_perm()结果中提取指定变量

localG_perm()返回的是localG类数值对象,本质是附加了统计属性的向量,而非数据框,因此不能用常规数据框的索引方式提取变量。要获取你需要的"Gi"、"E.Gi"等指标,需通过访问对象属性实现,具体方法如下:

直接提取单个指标

针对你列出的每个变量,对应提取方式如下:

  • Gi:直接调用对象本身 r_auto(或用 as.vector(r_auto) 转为纯向量)
  • E.Gi(期望值):attributes(r_auto)$expected
  • Var.Gi(方差):attributes(r_auto)$var
  • StdDev.Gi(标准差):通过方差计算 sqrt(attributes(r_auto)$var)
  • Pr(z != E(Gi)):attributes(r_auto)$p
  • Pr(z != E(Gi)) Sim:attributes(r_auto)$sim
  • Pr(folded) Sim:attributes(r_auto)$folded
  • Skewness:attributes(r_auto)$skewness
  • Kurtosis:attributes(r_auto)$kurtosis

整理为数据框(更便于后续处理)

如果需要把所有指标整合到一个数据框中,可运行以下代码:

localG_df <- data.frame(
  Gi = r_auto,
  E.Gi = attributes(r_auto)$expected,
  Var.Gi = attributes(r_auto)$var,
  StdDev.Gi = sqrt(attributes(r_auto)$var),
  `Pr(z != E(Gi))` = attributes(r_auto)$p,
  `Pr(z != E(Gi)) Sim` = attributes(r_auto)$sim,
  `Pr(folded) Sim` = attributes(r_auto)$folded,
  Skewness = attributes(r_auto)$skewness,
  Kurtosis = attributes(r_auto)$kurtosis
)

说明

你之前尝试的 r_auto["Pr(z != E(Gi))"] 和 r_auto[, "Pr(z != E(Gi))"] 失效,是因为localG对象不是数据框结构,这些索引语法只适用于数据框、矩阵等二维结构,而带属性的向量需通过attributes()函数访问附加统计量。

内容的提问来源于stack exchange,提问作者Corbjn

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.14 15:52:31