R 如何循环sctest函数的原子向量?
我有以下列表,其中有单独数据帧的名称:R 如何循环sctest函数的原子向量?,r,loops,for-loop,vector,atomic,R,Loops,For Loop,Vector,Atomic,我有以下列表,其中有单独数据帧的名称: cods <- list("AUS", "BHR", "BOL", "CHN", "COL", "DEU", "EGY", "ESP", "FRA", "GBR", "GRC", "ISR&quo
cods <- list("AUS", "BHR", "BOL", "CHN", "COL", "DEU", "EGY", "ESP",
"FRA", "GBR", "GRC", "ISR", "JPN", "KOR", "MEX", "NGA", "NZL",
"ROU", "USA", "VNM", "ZAF")
由于某种原因,循环不起作用,出现此错误
Error in model.frame.default(formula, data = data) :
invalid type (NULL) for variable 'cods[[i]]$dconsumrel'
因此,对于第一次迭代,它将是这样的:
sctest(AUS$dconsumrel ~ AUS$date, type = "Chow", point = 8)
结果应该是
Chow test
data: AUS$dconsumrel ~ AUS$date
F = 3.1418, p-value = 0.1062
如何使循环正常工作?您首先是如何创建所有这些data.frames的?我建议您回到该步骤,将所有数据读入一个命名列表。它将使在R.Do
str(cods)
中处理其他所有内容更加容易,您将看到它不是一个数据帧列表,而是一个字符值列表。如果您的全球环境中每个国家/地区代码都有一个数据框,那么请创建一个列表,但不要在代码周围加引号。@SteveM即使使用了cods,错误仍然存在。我不认为建议使用noquote
(如文档所示,它返回一个类为“noquote”的对象)但是要有data.frames列表(与data.frames名称列表相反)。如果你真的,真的想走data.frame名称的字符向量路线(我不推荐),你可以看看?get
…我的意思是编码
Chow test
data: AUS$dconsumrel ~ AUS$date
F = 3.1418, p-value = 0.1062