2013-02-23 123 views
1

我一直在試圖從R中的字符串(實際上是一個$調用)中提取的東西,這是讓我瘋了。如果您有:提取字符串的一部分

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?我試過Google搜索堆棧溢出。我發現這一點:R extract a part of a string in R

這讓我試試:

sub(".*?exogen=(.*?)", "\\1", var.modell$call, perl = TRUE) 

但它返回:

[1] "VAR" "data" "2"  "trend" "z"  

我在做什麼錯?

回答

3

看那call對象本身:

m <- lm(speed~dist,data=cars) 
m$call$data 
## cars 

你會想var.modell$call$exogen

+1

爲什麼我不覺得這個解決方案比我想象的要容易得多?謝謝! – hejseb 2013-02-23 16:21:48