Распространение огибающей неопределенности измерения вокруг каждой точки через линейную модель в R

Я соответствовал следующей линейной модели, которую я построил с использованием кода ggplot2 и фрагмента данных ниже. Я использовал подход Монте-Карло для количественной оценки неопределенностей, связанных с каждой точкой данных var2 (стандартное отклонение оценок точек с шумом из 10000 симуляций Монте-Карло), хранящихся в var6 (те же единицы, что и вар 2). Тем не менее, я не уверен, как включить эти неопределенности в сюжет.

Я просмотрел web/stackexchange и нашел несколько похожих запросов, но не получил конкретных ответов, таких как этот и этот. Единственное реальное решение, которое я обнаружил в результате своих поисков, - это возможность взвешивания точек пропорционально их неопределенности в lm функция (обратный квадратный корень из моих неопределенностей), но я действительно не думаю, что это то, что я после.

Вместо этого я хотел бы иметь возможность ввести диапазон значений (var2 +/- var6) в мою модель, чтобы сгенерировать конверт прогнозируемых значений, который учитывает неопределенности в var6.

Пожалуйста, посоветуйте, спасибо!

код ggplot2:

ggplot(data = dat, 
       aes(x = var1, y = var2, color = as.factor(var3))) +
  stat_smooth(size = 2, method = lm, formula = y ~log(x), 
              show.legend = F, fullrange = F, se = F) +
  geom_point(size = 3)+
  theme(axis.title = element_text(size = 14), 
        axis.text = element_text(size = 14), 
        strip.text = element_text(size = 14), 
        legend.title = element_text(size = 14), 
        legend.text = element_text(size = 14)) + 
  theme(legend.position = "none")

Данные

> structure(list(var1 = c(5L, 5L, NA, 1L, 1L, 5L, 4L, 4L, 4L, 4L, 
NA, 2L, 15L, 18L, 8L, 3L, NA, 2L, 10L, 3L, 1L, 2L, 3L, 13L, 2L, 
7L, 2L, 3L, 2L, 11L, 11L, 3L, 1L, 1L, 1L, 5L, 1L, 1L, 1L, 1L, 
1L, 12L, 2L, 2L, 2L, 5L, 7L, 5L, 14L, 14L, 15L, 20L, 3L, 14L, 
12L, 1L, NA, 2L), var2 = c(12809.4897078949, 20942.2363261915, 
32579.6236531272, 5117.15166951954, 2554.39360278004, 19016.8868698684, 
8142.14852336025, 7131.73386600093, 4381.92237186042, 12230.6517363978, 
29687.1245110841, 22990.1972880239, 25934.9507205883, 25930.8258700104, 
17400.0724577244, 23371.4325260303, 34050.4259257071, 25091.2477340477, 
26939.4686071742, 23634.7179234314, 18412.4261018115, 19694.858763565, 
18613.1031024236, 27333.4026822017, 20189.9207118266, 22650.2972646603, 
24385.5429151823, 22263.0958498778, 12170.8501025214, 22054.2325444487, 
25510.5202235517, 4675.51312666485, 1561.73306481864, 8574.3199271613, 
1354.70278090383, 24957.1601514159, 19768.346625788, 4730.42768489829, 
19224.9150054583, 3285.72948903804, 17218.3966499476, 17814.201, 
22380.532114835, 6424.07165435052, 9712.40889037647, 21830.8738276867, 
12543.5565, 25540.573294955, 30456.6854998026, 26497.6346464698, 
32504.4187638633, 35193.0067560117, 7785.56481392295, 28545.6757735812, 
26137.1708056318, 2444.5645303282, 34296.0458183154, 19966.6912957546
), var3 = c("2", "1", "0", "7", "7", "1", "2", "2", "7", "2", 
"0", "0", "0", "0", "1", "0", "0", "0", "0", "0", "0", "0", "0", 
"0", "0", "0", "0", "0", "0", "1", "1", "7", "7", "2", "7", "0", 
"0", "7", "1", "7", "0", "1", "1", "7", "7", "0", "7", "0", "0", 
"1", "0", "0", "7", "1", "0", "7", "0", "0"), var4 = structure(c(1L, 
1L, 4L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 4L, 2L, 2L, 2L, 1L, 2L, 4L, 
2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 1L, 1L, 1L, 1L, 
1L, 1L, 2L, 2L, 1L, 1L, 1L, 2L, 1L, 1L, 1L, 1L, 2L, 1L, 2L, 2L, 
1L, 2L, 2L, 1L, 1L, 2L, 1L, 4L, 2L), .Label = c("B", "L", "LB", 
"U"), class = "factor"), var5 = c(43.8839807246273, 70.9849809812705, 
108.3123612557, 18.5067346403427, 9.30378992188086, 63.3011740227475, 
28.1072745643121, 28.5083339976212, 16.0029814963776, 43.4384982552552, 
95.5961125739346, 75.5159676257879, 86.6707470294212, 86.547081313194, 
58.7043591350055, 76.5451886211294, 109.786605681324, 83.2299608979667, 
88.7213157801791, 77.7420172038402, 59.2559304416528, 65.7914032345122, 
62.7598600887958, 91.7197286498123, 69.3290728743263, 76.1868976863145, 
83.0788269571258, 77.2892129514035, 41.7133254989406, 71.8765746703731, 
87.2475094008255, 16.8066086188985, 4.81454371884126, 29.0976854774272, 
6.63776939563476, 82.4170530759177, 65.430933660396, 16.9835727406131, 
61.0138926544893, 12.1712730422232, 56.4363564217849, 60.2270911399615, 
75.0308785572054, 22.0798362938508, 34.5931870329142, 72.8849996289418, 
44.307788355451, 82.7342263022031, 98.5680497957899, 88.5065672966968, 
106.805403349049, 115.732643399077, 28.3884997119228, 96.4257905149245, 
86.8582791738412, 9.42521951609614, 114.232961213524, 66.7531405760279
), var6 = c(246.386415870509, 102.627718638554, 40.5305212705092, 
196.842873553088, 164.022947554134, 75.7267072687521, 38.5276353169452, 
100.950606398559, 520.989766269837, 2.67489943916838, 600.966610777077, 
78.0325627771947, 32.7335380376157, 268.415070039536, 32.6816903646549, 
5.87551857731808, 179.326151601789, 20.4131166389686, 3.45008167868172, 
82.3102215219561, 100.56612096066, 10.1273398507419, 28.8644961441366, 
68.6775279676419, 140.999013629825, 1.7994802384114, 74.150850208548, 
434.675626693473, 77.4721303629495, 296.899295360127, 102.271469391752, 
83.7968946136107, 275.946289424453, 367.500725949366, 171.757704170549, 
177.429544428664, 40.6668074848761, 110.476576802597, 130.656699587288, 
216.176847219466, 44.7592760270898, 121.654428880646, 82.6255713213243, 
417.967735185252, 164.593370525853, 20.9860563319626, 27.2371464251141, 
108.39625696672, 238.703595397891, 44.3123444116671, 195.644038263642, 
147.354686635324, 194.618203925983, 111.410515414297, 134.090660954799, 
24.3810724829099, 20.8960565535128, 65.352646504575)), .Names = c("var1", 
"var2", "var3", "var4", "var5", "var6"), row.names = c(NA, -58L
), class = "data.frame")

0 ответов

Другие вопросы по тегам