我一直在尝试从R中提取一些字符串(实际上是$ call),这让我疯狂。如果你有:
library(vars)
data <- as.data.frame(matrix(c(runif(40)), ncol=2))
z <- matrix(c(runif(40)), ncol=2)
var.modell <- VAR(data, p = 2, exogen=z, type = "trend")
你如何提取z?我试过谷歌搜索和搜索堆栈溢出。我发现了这个:R extract a part of a string in R
让我尝试:
sub(".*?exogen=(.*?)", "\\1", var.modell$call, perl = TRUE)
但它返回:
[1] "VAR" "data" "2" "trend" "z"
我做错了什么?
答案 0 :(得分:3)
查看call
对象本身:
m <- lm(speed~dist,data=cars)
m$call$data
## cars
您需要var.modell$call$exogen
。