lm 列表中的分段包导致变量模型无效类型(列表)错误

问题描述 投票:0回答:0

我对 R 比较陌生,并且在过去 5 年中分析了几座建筑物的能源数据。我正在尝试根据每座建筑物的温度建立一个用电量模型。我还想找到每个建筑物中打开电制冷时的变化点温度。五年的每小时积分看起来像:(https://i.stack.imgur.com/FTsi8.jpg

这是我的数据的样本头(test1)

      Date Hour     Temp Bldg1_elect Bldg2_elect Bldg3_elect Bldg4_elect Bldg5_elect

1 2017 年 1 月 1 日 0 39.00000 190 173.167 245.50 239.0 335.700 2 1/1/2017 1 37.50000 188 172.880 245.25 241.0 333.600 3 1/1/2017 2 34.00000 186 172.703 244.75 238.5 340.900 4 1/1/2017 3 33.00000 187 172.777 248.25 242.5 334.638 5 1/1/2017 4 30.33333 187 173.112 253.00 254.5 338.362 6 1/1/2017 5 31.00000 190 176.044 253.75 283.5 335.263

#为每个建筑物创建一个 lm 列表。 选举模型<- lapply(3:8, function(x) lm(test1[,x]~Temp, data=test1))

#尝试使用分段包找到变化点温度。 Elect_cp <- lapply(1:5, function(x) segmented(Elect_model[[x]], seg.Z=~Temp))

但是它给出了错误: model.frame.default(formula = test1[, x] ~ Temp + test1, data = test1, 错误: 变量“test1”的无效类型(列表)

Segmented 通常需要一个 lm 列表,我不能让它在列表列表中循环吗?

r linear-regression
© www.soinside.com 2019 - 2024. All rights reserved.