r - R,从图中推断平均分数
问题描述
使用这样创建它的数据:
test<-structure(list(study_id = c(1, 1, 1, 1, 1, 5, 5, 5, 5, 5, 13,
13, 13, 13, 13, 34, 34, 34, 34, 34, 40, 40, 40, 40, 40, 44, 44,
44, 44, 44, 47, 47, 47, 47, 47, 49, 49, 49, 49, 49, 51, 51, 51,
51, 51, 61, 61, 61, 61, 61, 66, 66, 66, 66, 66, 67, 67, 67, 67,
67, 68, 68, 68, 68, 68, 72, 72, 72, 72, 72, 75, 75, 75, 75, 75,
80, 80, 80, 80, 80, 84, 84, 84, 84, 84, 86, 86, 86, 86, 86, 94,
94, 94, 94, 94, 95, 95, 95, 95, 95, 101, 101, 101, 101, 101,
105, 105, 105, 105, 105, 111, 111, 111, 111, 111, 117, 117, 117,
117, 117, 123, 123, 123, 123, 123, 124, 124, 124, 124, 124, 125,
125, 125, 125, 125, 126, 126, 126, 126, 126, 131, 131, 131, 131,
131, 145, 145, 145, 145, 145, 153, 153, 153, 153, 153, 154, 154,
154, 154, 154, 155, 155, 155, 155, 155, 156, 156, 156, 156, 156,
161, 161, 161, 161, 161, 162, 162, 162, 162, 162, 166, 166, 166,
166, 166, 167, 167, 167, 167, 167, 169, 169, 169, 169, 169, 172,
172, 172, 172, 172, 175, 175, 175, 175, 175, 179, 179, 179, 179,
179, 180, 180, 180, 180, 180, 184, 184, 184, 184, 184, 185, 185,
185, 185, 185, 188, 188, 188, 188, 188, 190, 190, 190, 190, 190,
192, 192, 192, 192, 192, 194, 194, 194, 194, 194, 195, 195, 195,
195, 195, 197, 197, 197, 197, 197, 199, 199, 199, 199, 199, 203,
203, 203, 203, 203, 207, 207, 207, 207, 207, 210, 210, 210, 210,
210, 211, 211, 211, 211, 211, 212, 212, 212, 212, 212, 217, 217,
217, 217, 217, 221, 221, 221, 221, 221, 223, 223, 223, 223, 223,
227, 227, 227, 227, 227, 228, 228, 228, 228, 228, 229, 229, 229,
229, 229, 239, 239, 239, 239, 239, 244, 244, 244, 244, 244, 253,
253, 253, 253, 253, 256, 256, 256, 256, 256, 257, 257, 257, 257,
257, 259, 259, 259, 259, 259, 266, 266, 266, 266, 266, 272, 272,
272, 272, 272, 275, 275, 275, 275, 275, 277, 277, 277, 277, 277,
278, 278, 278, 278, 278, 284, 284, 284, 284, 284, 288, 288, 288,
288, 288, 290, 290, 290, 290, 290, 291, 291, 291, 291, 291, 292,
292, 292, 292, 292, 294, 294, 294, 294, 294, 295, 295, 295, 295,
295, 296, 296, 296, 296, 296, 299, 299, 299, 299, 299, 300, 300,
300, 300, 300, 301, 301, 301, 301, 301, 303, 303, 303, 303, 303,
305, 305, 305, 305, 305, 306, 306, 306, 306, 306, 307, 307, 307,
307, 307, 309, 309, 309, 309, 309, 313, 313, 313, 313, 313, 315,
315, 315, 315, 315, 316, 316, 316, 316, 316, 320, 320, 320, 320,
320, 324, 324, 324, 324, 324, 331, 331, 331, 331, 331, 336, 336,
336, 336, 336, 337, 337, 337, 337, 337, 348, 348, 348, 348, 348,
349, 349, 349, 349, 349, 352, 352, 352, 352, 352, 353, 353, 353,
353, 353, 367, 367, 367, 367, 367, 373, 373, 373, 373, 373, 382,
382, 382, 382, 382, 387, 387, 387, 387, 387, 388, 388, 388, 388,
388, 389, 389, 389, 389, 389, 392, 392, 392, 392, 392, 398, 398,
398, 398, 398, 401, 401, 401, 401, 401, 402, 402, 402, 402, 402,
404, 404, 404, 404, 404, 405, 405, 405, 405, 405, 410, 410, 410,
410, 410, 411, 411, 411, 411, 411, 412, 412, 412, 412, 412, 413,
413, 413, 413, 413, 414, 414, 414, 414, 414, 415, 415, 415, 415,
415, 420, 420, 420, 420, 420, 428, 428, 428, 428, 428, 431, 431,
431, 431, 431, 433, 433, 433, 433, 433, 434, 434, 434, 434, 434,
436, 436, 436, 436, 436), Time = structure(c(1L, 2L, 3L, 4L,
5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L,
1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L,
2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L,
3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L,
4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L,
5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L,
1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L,
2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L,
3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L,
4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L,
5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L,
1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L,
2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L,
3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L,
4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L,
5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L,
1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L,
2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L,
3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L,
4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L,
5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L,
1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L,
2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L,
3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L,
4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L,
5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L,
1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L,
2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L,
3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L,
4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L,
5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L,
1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L,
2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L,
3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L,
4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L,
5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L,
1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L,
2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L,
3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L, 4L, 5L, 1L, 2L, 3L,
4L, 5L), .Label = c("1", "2", "3", "4", "5"), class = "factor"),
Score = c(NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, 3, NA, NA, NA, NA, 0, 0,
NA, NA, NA, NA, NA, NA, NA, NA, 4, 7, NA, NA, NA, NA, NA,
NA, NA, NA, 4, NA, NA, NA, NA, 0, NA, NA, NA, NA, 0, NA,
NA, NA, NA, 0, 0, 7, 8, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, 5, 7, NA, NA, NA, 0, NA, NA,
NA, NA, 0, 5, 8, NA, NA, 7, 8, NA, NA, NA, 0, 0, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, 4, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, 0, NA, NA, NA, NA, 4, NA, NA, NA, NA, NA, NA, NA, NA,
NA, 2, 8, 8, NA, NA, 3, NA, NA, NA, NA, 1, NA, NA, NA, NA,
0, 9, NA, NA, NA, 2, NA, NA, NA, NA, NA, NA, NA, NA, NA,
2, NA, NA, NA, NA, NA, NA, NA, NA, NA, 0, 0, 1, 5, 5, NA,
NA, NA, NA, NA, 3, 4, 4, NA, NA, 0, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, 0, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, 0, NA,
NA, NA, NA, 0, 0, 0, 1, 1, 9, 9, NA, NA, NA, NA, NA, NA,
NA, NA, 0, 2, 5, 5, NA, NA, NA, NA, NA, NA, 0, 0, 0, 0, 0,
0, NA, NA, NA, NA, NA, NA, NA, NA, NA, 6, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, 0, NA, NA, NA, NA,
0, NA, NA, NA, NA, 7, NA, NA, NA, NA, 5, NA, NA, NA, NA,
NA, NA, NA, NA, NA, 7, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, 0, 4, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, 0, 1, 1, 1, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, 8, 8, NA, NA, NA, 0,
NA, NA, NA, NA, 0, NA, NA, NA, NA, 0, 3, NA, NA, NA, 6, NA,
NA, NA, NA, NA, NA, NA, NA, NA, 5, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, 7, NA,
NA, NA, NA, 0, 0, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, 3, 8, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, 0, NA, NA, NA, NA, 5, 5,
5, NA, NA, 0, NA, NA, NA, NA, 2, 7, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, 0, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, 0, 0, NA, NA, NA, NA, NA, NA, NA, NA, 0, 3, NA, NA,
NA, 0, NA, NA, NA, NA, 7, 7, 8, NA, NA, 0, NA, 0, NA, NA,
2, 4, 4, NA, NA), TimeBetweenScans = c(NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
316, NA, NA, NA, NA, 113, 139, NA, NA, NA, NA, NA, NA, NA,
NA, 335, 660, NA, NA, NA, NA, NA, NA, NA, NA, 104, NA, NA,
NA, NA, 7, NA, NA, NA, NA, 42, NA, NA, NA, NA, 30, 84, 467,
826, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, 643, 1794, NA, NA, NA, 404, NA, NA, NA, NA, 40,
221, 394, NA, NA, 171, 320, NA, NA, NA, 51, 227, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, 449, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, 56, NA, NA, NA, NA, 104, NA, NA, NA, NA, NA, NA,
NA, NA, NA, 79, 989, 1097, NA, NA, 116, NA, NA, NA, NA, 65,
NA, NA, NA, NA, 39, 411, NA, NA, NA, 1193, NA, NA, NA, NA,
NA, NA, NA, NA, NA, 142, NA, NA, NA, NA, NA, NA, NA, NA,
NA, 106, 216, 266, 497, 575, NA, NA, NA, NA, NA, 221, 474,
796, NA, NA, 18, NA, NA, NA, NA, 87, 1565, NA, NA, NA, NA,
NA, NA, NA, NA, 36, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, 207,
529, NA, NA, NA, NA, NA, NA, NA, NA, 125, NA, NA, NA, NA,
137, 372, 941, 1102, 1225, 927, 1006, NA, NA, NA, NA, NA,
NA, NA, NA, 63, 429, 533, 567, NA, NA, NA, NA, NA, NA, 156,
447, 470, 1204, 1266, 32, NA, NA, NA, NA, NA, NA, NA, NA,
NA, 411, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, 201, NA, NA, NA, NA, 160, NA, NA, NA, NA, 166, NA,
NA, NA, NA, 459, NA, NA, NA, NA, NA, NA, NA, NA, NA, 212,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, 50,
313, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, 312, 530, 783, 1574, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, 1627, 1706, NA, NA, NA, 354,
NA, NA, NA, NA, 33, NA, NA, NA, NA, 62, 130, NA, NA, NA,
1416, NA, NA, NA, NA, 121, NA, NA, NA, NA, 842, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, 24, 64, 82, 122, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, 250, NA, NA, NA, NA, 174, 300, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, 216, 264, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, 17,
NA, NA, NA, NA, 214, 268, 388, NA, NA, 24, NA, NA, NA, NA,
149, 382, NA, NA, NA, NA, NA, NA, NA, NA, 8, NA, NA, NA,
NA, 91, 188, NA, NA, NA, NA, NA, NA, NA, NA, 72, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, 9, 38, NA,
NA, NA, NA, NA, NA, NA, NA, 13, 138, NA, NA, NA, 42, NA,
NA, NA, NA, 771, 1200, 1512, NA, NA, 113, 166, 180, NA, NA,
122, 475, 640, NA, NA), Groups = c(NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, "Two",
NA, NA, NA, NA, "Zero", "Zero", NA, NA, NA, NA, NA, NA, NA,
NA, "Two", "Two", NA, NA, NA, NA, NA, NA, NA, NA, "Two",
NA, NA, NA, NA, "Zero", NA, NA, NA, NA, "Zero", NA, NA, NA,
NA, "Two", "Two", "Two", "Two", NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, "Two", "Two", NA, NA,
NA, "One", NA, NA, NA, NA, "Two", "Two", "Two", NA, NA, "Two",
"Two", NA, NA, NA, "Zero", "Zero", NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, "Two", NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, "Zero",
NA, NA, NA, NA, "Two", NA, NA, NA, NA, NA, NA, NA, NA, NA,
"Two", "Two", "Two", NA, NA, "Two", NA, NA, NA, NA, "Two",
NA, NA, NA, NA, "Two", "Two", NA, NA, NA, "One", NA, NA,
NA, NA, NA, NA, NA, NA, NA, "Two", NA, NA, NA, NA, NA, NA,
NA, NA, NA, "Two", "Two", "Two", "Two", "Two", NA, NA, NA,
NA, NA, "Two", "Two", "Two", NA, NA, "Zero", NA, NA, NA,
NA, "Zero", "Zero", NA, NA, NA, NA, NA, NA, NA, NA, "Zero",
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, "Zero", "Zero", NA, NA,
NA, NA, NA, NA, NA, NA, "Zero", NA, NA, NA, NA, "One", "One",
"One", "One", "One", "Two", "Two", NA, NA, NA, NA, NA, NA,
NA, NA, "Two", "Two", "Two", "Two", NA, NA, NA, NA, NA, NA,
"One", "One", "One", "One", "One", "Zero", NA, NA, NA, NA,
NA, NA, NA, NA, NA, "Two", NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, "Zero", NA, NA, NA, NA, "Zero", NA,
NA, NA, NA, "Two", NA, NA, NA, NA, "Two", NA, NA, NA, NA,
NA, NA, NA, NA, NA, "Two", NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, "Two", "Two", NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, "One",
"One", "One", "One", NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, "Two", "Two", NA, NA, NA, "One", NA, NA, NA, NA,
"Zero", NA, NA, NA, NA, "Two", "Two", NA, NA, NA, "Two",
NA, NA, NA, NA, "Zero", NA, NA, NA, NA, "Two", NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, "Two", NA, NA, NA, NA, "Zero", "One", NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, "Two", "Two", NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, "Zero", NA, NA, NA, NA, "Two", "Two", "Two", NA, NA,
"Zero", NA, NA, NA, NA, "Two", "Two", NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, "Zero", NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, "Zero", "Zero", NA, NA, NA, NA, NA, NA, NA,
NA, "Zero", "Two", NA, NA, NA, "Zero", NA, NA, NA, NA, "Two",
"Two", "Two", NA, NA, "One", "One", "One", NA, NA, "Two",
"Two", "Two", NA, NA)), class = c("spec_tbl_df", "tbl_df",
"tbl", "data.frame"), row.names = c(NA, -630L), spec = structure(list(
cols = list(study_id = structure(list(), class = c("collector_double",
"collector")), Time = structure(list(), class = c("collector_double",
"collector")), Score = structure(list(), class = c("collector_double",
"collector")), TimeBetweenScans = structure(list(), class = c("collector_double",
"collector")), Groups = structure(list(), class = c("collector_character",
"collector"))), default = structure(list(), class = c("collector_guess",
"collector")), skip = 1L), class = "col_spec"))
创建图表的代码如下:我将研究 id 分组,以便绘制一条虚线连接每个患者的所有分数。所以每一行都是一个人。
test%>%ggplot(aes(x=TimeBetweenScans,y=Score, group=study_id, color=Time, shape=Groups))+geom_point(size=3)+geom_line(color="Black", linetype="dotted")+labs(title = "Oulu Score vs Time",y="Oulu Score",x="Time from Post-Op Scan to Follow Up Scan", color="Follow-up Scan")
我被要求在不同的时间范围内获得“平均”分数。即 1 年随访 (TimeBetweenScans = "365")、2 年、3 年和 4 年的平均分数。
因此,例如,通过目测,您将获取所有穿过我在 1 年标记处绘制的红线的虚线,找出它们越过那条线时它们在 Y 轴上的位置,然后平均它们的“分数”。
如果我在“TimeBetweenScans”列中有包含“365”的行,我会写如下内容:
test%>%filter(TimeBetweenScans=="365")%>%summarise(MeanScore=mean(Score))
该代码将仅选择年份标记处的数据并为我平均 y 轴得分。但是由于 365 实际上并不是连续的,而且它只存在于那些虚线穿过它时,所以我需要推断在“365”处那个人会是什么。
那有意义吗?
如果是这样,我该怎么做?
解决方案
这是一个想法。我过滤了每个所需时间 ( year_in_days
)附近的最近几天study_id
。然后我计算了这些点之间的回归线并预测Score
了year_in_days
. 在最后一步中,我计算了所有预测的平均值。
过滤时您可能会收到很多警告,因为很多study_id
组没有任何价值 - 只是 NA。
代码
# Time you are looking for
year_in_days = 100
test %>%
group_by(study_id) %>%
group_modify(~{
.x %>%
# filter inside each group the nearest time to year_in_days (lower and upper)
filter((TimeBetweenScans %in% min(TimeBetweenScans[TimeBetweenScans > year_in_days], na.rm = T)) |
(TimeBetweenScans %in% max(TimeBetweenScans[TimeBetweenScans < year_in_days], na.rm = T))) %>%
# filter groups with two meassurments and values for Score
filter(n() == 2 &
!is.na(Score))
}) %>%
ungroup() %>%
group_by(study_id) %>%
group_modify(~{
# for each group predict the value at year "year_in_days"
broom::tidy(predict(lm(Score ~ TimeBetweenScans, .x), data.frame(TimeBetweenScans = c(year_in_days))))
}) %>%
ungroup() %>%
# calculate mean score over all predictions
summarise(mean(x))
输出
# A tibble: 1 x 1
`mean(x)`
<dbl>
1 1.14
推荐阅读
- flutter - 使用 chart_flutter 进行水平滚动时标签溢出窗口
- javascript - 为什么'value.length'未定义?(STS)
- jupyter-notebook - Jupyter 笔记本演示 / RISE
- java - 防止与文件的竞争条件
- html - 如何从wordpress中的自定义css中排除特定页面?
- unit-testing - 包含数据库调用的 CakePHP 单元测试组件
- java - JavaMail - 阅读 Outlook 邮件时出现 AuthenticationFailedException
- java - 我们请求长时间运行,UI 在响应准备就绪时超时
- linux - Linux localhost 端口 8080 无响应
- wrapper - 装箱和拆箱平等java