去中心化和去缩放GLMER参数

8

我一直在努力将从glmer模型中缩放和居中的模型系数转换回非居中和未缩放的值。

我使用lme4(v1.1.7)包中的GLMM分析了一个数据集。它涉及声学接收器的最大探测范围的计算以及环境变量的影响。

样本数据:

dd <-   structure(list(SUR.ID = c(10186L, 10186L, 10186L, 10186L, 10186L, 
10186L, 10186L, 10186L, 10186L, 10186L, 10186L, 10186L, 10186L, 
10186L, 10186L, 10186L, 10186L, 10186L, 10186L, 10186L, 10186L, 
10186L, 10186L, 10186L, 10186L, 10186L, 10186L, 10186L, 10186L, 
10186L, 10186L, 10186L, 10186L, 10186L, 10186L, 10186L, 10186L, 
10186L, 10186L, 10186L, 10186L, 10186L, 10186L, 10186L, 10186L, 
10186L, 10186L, 10186L, 10186L, 10186L, 10186L, 10186L, 10186L, 
10186L, 10186L, 10186L, 10186L, 10186L, 10186L, 10186L, 10186L, 
10186L, 10186L, 10186L, 10186L, 10186L, 10186L, 10186L, 10186L, 
10186L, 10186L, 10186L, 10186L, 10186L, 10186L, 10186L, 10186L, 
10186L, 10186L, 10186L, 10249L, 10249L, 10249L, 10249L, 10249L, 
10249L, 10249L, 10249L, 10249L, 10249L, 10249L, 10249L, 10249L, 
10249L, 10249L, 10249L, 10249L, 10249L, 10249L, 10249L, 10249L, 
10249L, 10249L, 10249L, 10249L, 10249L, 10249L, 10249L, 10249L, 
10249L, 10249L, 10249L, 10249L, 10249L, 10249L, 10249L, 10249L, 
10249L, 10249L, 10249L, 10250L, 10250L, 10250L, 10250L, 10250L, 
10250L, 10250L, 10250L, 10250L, 10250L, 10250L, 10250L, 10250L, 
10250L, 10250L, 10250L, 10250L, 10250L, 10250L, 10250L, 10250L, 
10250L, 10250L, 10250L, 10250L, 10250L, 10250L, 10250L, 10250L, 
10250L, 10250L, 10250L, 10250L, 10250L, 10250L, 10250L, 10250L, 
10250L, 10250L, 10250L, 10250L, 10250L, 10250L, 10250L, 10250L, 
10250L, 10250L, 10250L, 10250L, 10250L, 10250L, 10250L, 10250L, 
10250L, 10250L, 10250L, 10250L, 10250L, 10250L, 10250L, 10250L, 
10250L, 10250L, 10250L, 10250L, 10250L, 10250L, 10250L, 10250L, 
10250L, 10250L, 10250L, 10250L, 10250L, 10250L, 10250L, 10250L, 
10250L, 10250L, 10250L), Valid.detections = c(1L, 4L, 0L, 1L, 
6L, 7L, 0L, 1L, 0L, 0L, 6L, 5L, 3L, 5L, 0L, 0L, 1L, 0L, 0L, 0L, 
2L, 3L, 0L, 1L, 5L, 1L, 0L, 0L, 1L, 1L, 0L, 0L, 5L, 3L, 1L, 1L, 
0L, 0L, 5L, 8L, 0L, 1L, 0L, 0L, 3L, 7L, 1L, 2L, 7L, 0L, 7L, 6L, 
0L, 3L, 0L, 1L, 0L, 1L, 2L, 5L, 0L, 3L, 0L, 2L, 1L, 5L, 3L, 0L, 
0L, 2L, 0L, 0L, 0L, 0L, 0L, 3L, 4L, 0L, 2L, 2L, 0L, 3L, 0L, 0L, 
9L, 8L, 0L, 2L, 9L, 0L, 7L, 4L, 0L, 5L, 0L, 2L, 0L, 1L, 2L, 4L, 
3L, 2L, 1L, 1L, 3L, 4L, 1L, 2L, 1L, 3L, 0L, 0L, 0L, 6L, 0L, 5L, 
6L, 1L, 3L, 1L, 1L, 0L, 2L, 1L, 6L, 5L, 2L, 1L, 2L, 0L, 1L, 7L, 
5L, 4L, 1L, 0L, 0L, 1L, 0L, 0L, 1L, 1L, 0L, 4L, 2L, 6L, 0L, 0L, 
0L, 1L, 0L, 0L, 3L, 9L, 0L, 7L, 0L, 2L, 7L, 3L, 0L, 5L, 0L, 1L, 
1L, 9L, 2L, 9L, 1L, 0L, 6L, 1L, 0L, 1L, 0L, 0L, 0L, 0L, 3L, 13L, 
0L, 4L, 1L, 1L, 1L, 2L, 1L, 6L, 0L, 2L, 0L, 0L, 0L, 1L, 1L, 11L, 
5L, 0L, 6L, 5L), distance = c(200L, 200L, 200L, 200L, 100L, 100L, 
300L, 300L, 400L, 400L, 50L, 50L, 50L, 50L, 300L, 300L, 200L, 
200L, 400L, 400L, 200L, 200L, 100L, 100L, 100L, 100L, 300L, 300L, 
300L, 300L, 400L, 400L, 50L, 50L, 50L, 50L, 400L, 400L, 100L, 
100L, 200L, 200L, 200L, 200L, 100L, 100L, 100L, 100L, 50L, 300L, 
50L, 300L, 300L, 300L, 400L, 400L, 400L, 400L, 50L, 50L, 200L, 
200L, 200L, 100L, 200L, 100L, 100L, 100L, 300L, 300L, 400L, 400L, 
400L, 50L, 400L, 50L, 50L, 300L, 50L, 300L, 200L, 200L, 200L, 
200L, 100L, 100L, 100L, 100L, 50L, 300L, 50L, 300L, 300L, 300L, 
400L, 400L, 400L, 400L, 50L, 50L, 200L, 200L, 200L, 100L, 200L, 
100L, 100L, 100L, 300L, 300L, 400L, 400L, 400L, 50L, 400L, 50L, 
50L, 300L, 50L, 300L, 200L, 200L, 200L, 200L, 100L, 100L, 300L, 
300L, 400L, 400L, 50L, 50L, 50L, 50L, 300L, 300L, 200L, 200L, 
400L, 400L, 200L, 200L, 100L, 100L, 100L, 100L, 300L, 300L, 300L, 
300L, 400L, 400L, 50L, 50L, 50L, 50L, 400L, 400L, 100L, 100L, 
200L, 200L, 200L, 200L, 100L, 100L, 100L, 100L, 50L, 300L, 50L, 
300L, 300L, 300L, 400L, 400L, 400L, 400L, 50L, 50L, 200L, 200L, 
200L, 100L, 200L, 100L, 100L, 100L, 300L, 300L, 400L, 400L, 400L, 
50L, 400L, 50L, 50L, 300L, 50L, 300L), wind.speed = c(8.9939016, 
8.9939016, 8.9939016, 8.9939016, 8.9939016, 8.9939016, 8.9939016, 
8.9939016, 8.9939016, 8.9939016, 8.9939016, 8.9939016, 8.9939016, 
8.9939016, 8.9939016, 8.9939016, 10.8187512, 10.8187512, 8.9939016, 
8.9939016, 10.8187512, 10.8187512, 10.8187512, 10.8187512, 10.8187512, 
10.8187512, 10.8187512, 10.8187512, 10.8187512, 10.8187512, 10.8187512, 
10.8187512, 10.8187512, 10.8187512, 10.8187512, 10.8187512, 10.8187512, 
10.8187512, 8.9939016, 8.9939016, 2.389683519, 2.389683519, 2.389683519, 
2.389683519, 2.389683519, 2.389683519, 2.389683519, 2.389683519, 
2.389683519, 2.389683519, 2.389683519, 2.389683519, 2.389683519, 
2.389683519, 2.389683519, 2.389683519, 2.389683519, 2.389683519, 
2.389683519, 2.389683519, 4.779367038, 4.779367038, 4.779367038, 
4.779367038, 4.779367038, 4.779367038, 4.779367038, 4.779367038, 
4.779367038, 4.779367038, 4.779367038, 4.779367038, 4.779367038, 
4.779367038, 4.779367038, 4.779367038, 4.779367038, 4.779367038, 
4.779367038, 4.779367038, 2.389683519, 2.389683519, 2.389683519, 
2.389683519, 2.389683519, 2.389683519, 2.389683519, 2.389683519, 
2.389683519, 2.389683519, 2.389683519, 2.389683519, 2.389683519, 
2.389683519, 2.389683519, 2.389683519, 2.389683519, 2.389683519, 
2.389683519, 2.389683519, 4.779367038, 4.779367038, 4.779367038, 
4.779367038, 4.779367038, 4.779367038, 4.779367038, 4.779367038, 
4.779367038, 4.779367038, 4.779367038, 4.779367038, 4.779367038, 
4.779367038, 4.779367038, 4.779367038, 4.779367038, 4.779367038, 
4.779367038, 4.779367038, 8.9939016, 8.9939016, 8.9939016, 8.9939016, 
8.9939016, 8.9939016, 8.9939016, 8.9939016, 8.9939016, 8.9939016, 
8.9939016, 8.9939016, 8.9939016, 8.9939016, 8.9939016, 8.9939016, 
10.8187512, 10.8187512, 8.9939016, 8.9939016, 10.8187512, 10.8187512, 
10.8187512, 10.8187512, 10.8187512, 10.8187512, 10.8187512, 10.8187512, 
10.8187512, 10.8187512, 10.8187512, 10.8187512, 10.8187512, 10.8187512, 
10.8187512, 10.8187512, 10.8187512, 10.8187512, 8.9939016, 8.9939016, 
2.389683519, 2.389683519, 2.389683519, 2.389683519, 2.389683519, 
2.389683519, 2.389683519, 2.389683519, 2.389683519, 2.389683519, 
2.389683519, 2.389683519, 2.389683519, 2.389683519, 2.389683519, 
2.389683519, 2.389683519, 2.389683519, 2.389683519, 2.389683519, 
4.779367038, 4.779367038, 4.779367038, 4.779367038, 4.779367038, 
4.779367038, 4.779367038, 4.779367038, 4.779367038, 4.779367038, 
4.779367038, 4.779367038, 4.779367038, 4.779367038, 4.779367038, 
4.779367038, 4.779367038, 4.779367038, 4.779367038, 4.779367038
), receiver.depth = c(0.65, 0.65, 0.69, 0.69, 0.685, 0.685, 0.645, 
0.645, 0.645, 0.645, 0.67, 0.67, 0.665, 0.665, 0.705, 0.705, 
1.12, 1.12, 0.73, 0.73, 1.155, 1.155, 1.13, 1.13, 1.155, 1.155, 
1.105, 1.105, 1.155, 1.155, 1.095, 1.095, 1.145, 1.145, 1.14, 
1.14, 1.15, 1.15, 0.65, 0.65, 0.41, 0.41, 0.455, 0.455, 0.405, 
0.405, 0.49, 0.49, 0.415, 0.42, 0.415, 0.42, 0.45, 0.45, 0.43, 
0.43, 0.45, 0.45, 0.51, 0.51, 1.01, 1.01, 1.095, 1.045, 1.095, 
1.045, 1.09, 1.09, 1, 1, 0.975, 0.975, 1.08, 1.055, 1.08, 1.055, 
1.085, 1.095, 1.085, 1.095, 0.41, 0.41, 0.455, 0.455, 0.405, 
0.405, 0.49, 0.49, 0.415, 0.42, 0.415, 0.42, 0.45, 0.45, 0.43, 
0.43, 0.45, 0.45, 0.51, 0.51, 1.01, 1.01, 1.095, 1.045, 1.095, 
1.045, 1.09, 1.09, 1, 1, 0.975, 0.975, 1.08, 1.055, 1.08, 1.055, 
1.085, 1.095, 1.085, 1.095, 0.65, 0.65, 0.69, 0.69, 0.685, 0.685, 
0.645, 0.645, 0.645, 0.645, 0.67, 0.67, 0.665, 0.665, 0.705, 
0.705, 1.12, 1.12, 0.73, 0.73, 1.155, 1.155, 1.13, 1.13, 1.155, 
1.155, 1.105, 1.105, 1.155, 1.155, 1.095, 1.095, 1.145, 1.145, 
1.14, 1.14, 1.15, 1.15, 0.65, 0.65, 0.41, 0.41, 0.455, 0.455, 
0.405, 0.405, 0.49, 0.49, 0.415, 0.42, 0.415, 0.42, 0.45, 0.45, 
0.43, 0.43, 0.45, 0.45, 0.51, 0.51, 1.01, 1.01, 1.095, 1.045, 
1.095, 1.045, 1.09, 1.09, 1, 1, 0.975, 0.975, 1.08, 1.055, 1.08, 
1.055, 1.085, 1.095, 1.085, 1.095), water.temperature = c(20.33, 
20.33, 20.9, 20.9, 20.72, 20.72, 20.365, 20.365, 20.505, 20.505, 
20.445, 20.445, 20.62, 20.62, 20.88, 20.88, 22.775, 22.775, 20.92, 
20.92, 22.86, 22.86, 22.755, 22.755, 22.835, 22.835, 22.765, 
22.765, 22.86, 22.86, 22.78, 22.78, 22.835, 22.835, 22.78, 22.78, 
22.835, 22.835, 20.32, 20.32, 27.925, 27.925, 27.62, 27.62, 27.82, 
27.82, 27.58, 27.58, 27.67, 27.98, 27.67, 27.98, 27.63, 27.63, 
27.64, 27.64, 27.96, 27.96, 27.52, 27.52, 26.21, 26.21, 25.725, 
26.14, 25.725, 26.14, 25.605, 25.605, 26.205, 26.205, 26.255, 
26.255, 25.92, 26.07, 25.92, 26.07, 25.525, 25.795, 25.525, 25.795, 
27.925, 27.925, 27.62, 27.62, 27.82, 27.82, 27.58, 27.58, 27.67, 
27.98, 27.67, 27.98, 27.63, 27.63, 27.64, 27.64, 27.96, 27.96, 
27.52, 27.52, 26.21, 26.21, 25.725, 26.14, 25.725, 26.14, 25.605, 
25.605, 26.205, 26.205, 26.255, 26.255, 25.92, 26.07, 25.92, 
26.07, 25.525, 25.795, 25.525, 25.795, 20.33, 20.33, 20.9, 20.9, 
20.72, 20.72, 20.365, 20.365, 20.505, 20.505, 20.445, 20.445, 
20.62, 20.62, 20.88, 20.88, 22.775, 22.775, 20.92, 20.92, 22.86, 
22.86, 22.755, 22.755, 22.835, 22.835, 22.765, 22.765, 22.86, 
22.86, 22.78, 22.78, 22.835, 22.835, 22.78, 22.78, 22.835, 22.835, 
20.32, 20.32, 27.925, 27.925, 27.62, 27.62, 27.82, 27.82, 27.58, 
27.58, 27.67, 27.98, 27.67, 27.98, 27.63, 27.63, 27.64, 27.64, 
27.96, 27.96, 27.52, 27.52, 26.21, 26.21, 25.725, 26.14, 25.725, 
26.14, 25.605, 25.605, 26.205, 26.205, 26.255, 26.255, 25.92, 
26.07, 25.92, 26.07, 25.525, 25.795, 25.525, 25.795), Habitat = structure(c(1L, 
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
1L, 1L, 1L, 1L, 1L, 1L, 1L), .Label = "Drug Channel", class = "factor"), 
    Distance = c(-0.078078746, -0.078078746, -0.078078746, -0.078078746, 
    -0.858866211, -0.858866211, 0.702708718, 0.702708718, 1.483496183, 
    1.483496183, -1.249259944, -1.249259944, -1.249259944, -1.249259944, 
    0.702708718, 0.702708718, -0.078078746, -0.078078746, 1.483496183, 
    1.483496183, -0.078078746, -0.078078746, -0.858866211, -0.858866211, 
    -0.858866211, -0.858866211, 0.702708718, 0.702708718, 0.702708718, 
    0.702708718, 1.483496183, 1.483496183, -1.249259944, -1.249259944, 
    -1.249259944, -1.249259944, 1.483496183, 1.483496183, -0.858866211, 
    -0.858866211, -0.078078746, -0.078078746, -0.078078746, -0.078078746, 
    -0.858866211, -0.858866211, -0.858866211, -0.858866211, -1.249259944, 
    0.702708718, -1.249259944, 0.702708718, 0.702708718, 0.702708718, 
    1.483496183, 1.483496183, 1.483496183, 1.483496183, -1.249259944, 
    -1.249259944, -0.078078746, -0.078078746, -0.078078746, -0.858866211, 
    -0.078078746, -0.858866211, -0.858866211, -0.858866211, 0.702708718, 
    0.702708718, 1.483496183, 1.483496183, 1.483496183, -1.249259944, 
    1.483496183, -1.249259944, -1.249259944, 0.702708718, -1.249259944, 
    0.702708718, -0.078078746, -0.078078746, -0.078078746, -0.078078746, 
    -0.858866211, -0.858866211, -0.858866211, -0.858866211, -1.249259944, 
    0.702708718, -1.249259944, 0.702708718, 0.702708718, 0.702708718, 
    1.483496183, 1.483496183, 1.483496183, 1.483496183, -1.249259944, 
    -1.249259944, -0.078078746, -0.078078746, -0.078078746, -0.858866211, 
    -0.078078746, -0.858866211, -0.858866211, -0.858866211, 0.702708718, 
    0.702708718, 1.483496183, 1.483496183, 1.483496183, -1.249259944, 
    1.483496183, -1.249259944, -1.249259944, 0.702708718, -1.249259944, 
    0.702708718, -0.078078746, -0.078078746, -0.078078746, -0.078078746, 
    -0.858866211, -0.858866211, 0.702708718, 0.702708718, 1.483496183, 
    1.483496183, -1.249259944, -1.249259944, -1.249259944, -1.249259944, 
    0.702708718, 0.702708718, -0.078078746, -0.078078746, 1.483496183, 
    1.483496183, -0.078078746, -0.078078746, -0.858866211, -0.858866211, 
    -0.858866211, -0.858866211, 0.702708718, 0.702708718, 0.702708718, 
    0.702708718, 1.483496183, 1.483496183, -1.249259944, -1.249259944, 
    -1.249259944, -1.249259944, 1.483496183, 1.483496183, -0.858866211, 
    -0.858866211, -0.078078746, -0.078078746, -0.078078746, -0.078078746, 
    -0.858866211, -0.858866211, -0.858866211, -0.858866211, -1.249259944, 
    0.702708718, -1.249259944, 0.702708718, 0.702708718, 0.702708718, 
    1.483496183, 1.483496183, 1.483496183, 1.483496183, -1.249259944, 
    -1.249259944, -0.078078746, -0.078078746, -0.078078746, -0.858866211, 
    -0.078078746, -0.858866211, -0.858866211, -0.858866211, 0.702708718, 
    0.702708718, 1.483496183, 1.483496183, 1.483496183, -1.249259944, 
    1.483496183, -1.249259944, -1.249259944, 0.702708718, -1.249259944, 
    0.702708718), Receiver.depth = c(-0.744681049, -0.744681049, 
    -0.612233214, -0.612233214, -0.628789194, -0.628789194, -0.761237028, 
    -0.761237028, -0.761237028, -0.761237028, -0.678457132, -0.678457132, 
    -0.695013111, -0.695013111, -0.562565277, -0.562565277, 0.811581001, 
    0.811581001, -0.47978538, -0.47978538, 0.927472856, 0.927472856, 
    0.84469296, 0.84469296, 0.927472856, 0.927472856, 0.761913064, 
    0.761913064, 0.927472856, 0.927472856, 0.728801105, 0.728801105, 
    0.894360898, 0.894360898, 0.877804918, 0.877804918, 0.910916877, 
    0.910916877, -0.744681049, -0.744681049, -1.539368053, -1.539368053, 
    -1.390364239, -1.390364239, -1.555924032, -1.555924032, -1.274472385, 
    -1.274472385, -1.522812073, -1.506256094, -1.522812073, -1.506256094, 
    -1.406920219, -1.406920219, -1.473144136, -1.473144136, -1.406920219, 
    -1.406920219, -1.208248468, -1.208248468, 0.447349458, 0.447349458, 
    0.728801105, 0.563241313, 0.728801105, 0.563241313, 0.712245126, 
    0.712245126, 0.414237499, 0.414237499, 0.331457603, 0.331457603, 
    0.679133167, 0.596353271, 0.679133167, 0.596353271, 0.695689147, 
    0.728801105, 0.695689147, 0.728801105, -1.539368053, -1.539368053, 
    -1.390364239, -1.390364239, -1.555924032, -1.555924032, -1.274472385, 
    -1.274472385, -1.522812073, -1.506256094, -1.522812073, -1.506256094, 
    -1.406920219, -1.406920219, -1.473144136, -1.473144136, -1.406920219, 
    -1.406920219, -1.208248468, -1.208248468, 0.447349458, 0.447349458, 
    0.728801105, 0.563241313, 0.728801105, 0.563241313, 0.712245126, 
    0.712245126, 0.414237499, 0.414237499, 0.331457603, 0.331457603, 
    0.679133167, 0.596353271, 0.679133167, 0.596353271, 0.695689147, 
    0.728801105, 0.695689147, 0.728801105, -0.744681049, -0.744681049, 
    -0.612233214, -0.612233214, -0.628789194, -0.628789194, -0.761237028, 
    -0.761237028, -0.761237028, -0.761237028, -0.678457132, -0.678457132, 
    -0.695013111, -0.695013111, -0.562565277, -0.562565277, 0.811581001, 
    0.811581001, -0.47978538, -0.47978538, 0.927472856, 0.927472856, 
    0.84469296, 0.84469296, 0.927472856, 0.927472856, 0.761913064, 
    0.761913064, 0.927472856, 0.927472856, 0.728801105, 0.728801105, 
    0.894360898, 0.894360898, 0.877804918, 0.877804918, 0.910916877, 
    0.910916877, -0.744681049, -0.744681049, -1.539368053, -1.539368053, 
    -1.390364239, -1.390364239, -1.555924032, -1.555924032, -1.274472385, 
    -1.274472385, -1.522812073, -1.506256094, -1.522812073, -1.506256094, 
    -1.406920219, -1.406920219, -1.473144136, -1.473144136, -1.406920219, 
    -1.406920219, -1.208248468, -1.208248468, 0.447349458, 0.447349458, 
    0.728801105, 0.563241313, 0.728801105, 0.563241313, 0.712245126, 
    0.712245126, 0.414237499, 0.414237499, 0.331457603, 0.331457603, 
    0.679133167, 0.596353271, 0.679133167, 0.596353271, 0.695689147, 
    0.728801105, 0.695689147, 0.728801105), Transmitter.depth = c(-1.126364339, 
    -1.126364339, -0.821720789, -0.821720789, -0.702512443, -0.702512443, 
    -0.066734598, -0.066734598, 0.06571912, 0.06571912, 0.118700607, 
    0.118700607, 0.118700607, 0.118700607, 0.171682094, 0.171682094, 
    0.317381183, 0.317381183, 0.343871927, 0.343871927, 0.343871927, 
    0.343871927, 0.754478451, 0.754478451, 0.780969195, 0.780969195, 
    1.337274809, 1.337274809, 1.416747039, 1.416747039, 1.469728526, 
    1.469728526, 1.509464642, 1.509464642, 1.509464642, 1.509464642, 
    1.602182244, 1.602182244, -0.742248558, -0.742248558, -0.848211532, 
    -0.848211532, -0.689267071, -0.689267071, -0.583304097, -0.583304097, 
    -0.119716085, -0.119716085, 0.211418209, 0.211418209, 0.211418209, 
    0.211418209, 0.264399696, 0.264399696, 0.343871927, 0.343871927, 
    0.37036267, 0.37036267, 0.608779362, 0.608779362, 0.780969195, 
    0.780969195, 1.072367374, 1.072367374, 1.072367374, 1.072367374, 
    1.469728526, 1.469728526, 1.774372077, 1.774372077, 1.800862821, 
    1.800862821, 1.999543397, 1.999543397, 1.999543397, 1.999543397, 
    2.065770256, 2.065770256, 2.065770256, 2.065770256, -0.848211532, 
    -0.848211532, -0.689267071, -0.689267071, -0.583304097, -0.583304097, 
    -0.119716085, -0.119716085, 0.211418209, 0.211418209, 0.211418209, 
    0.211418209, 0.264399696, 0.264399696, 0.343871927, 0.343871927, 
    0.37036267, 0.37036267, 0.608779362, 0.608779362, 0.780969195, 
    0.780969195, 1.072367374, 1.072367374, 1.072367374, 1.072367374, 
    1.469728526, 1.469728526, 1.774372077, 1.774372077, 1.800862821, 
    1.800862821, 1.999543397, 1.999543397, 1.999543397, 1.999543397, 
    2.065770256, 2.065770256, 2.065770256, 2.065770256, -1.126364339, 
    -1.126364339, -0.821720789, -0.821720789, -0.702512443, -0.702512443, 
    -0.066734598, -0.066734598, 0.06571912, 0.06571912, 0.118700607, 
    0.118700607, 0.118700607, 0.118700607, 0.171682094, 0.171682094, 
    0.317381183, 0.317381183, 0.343871927, 0.343871927, 0.343871927, 
    0.343871927, 0.754478451, 0.754478451, 0.780969195, 0.780969195, 
    1.337274809, 1.337274809, 1.416747039, 1.416747039, 1.469728526, 
    1.469728526, 1.509464642, 1.509464642, 1.509464642, 1.509464642, 
    1.602182244, 1.602182244, -0.742248558, -0.742248558, -0.848211532, 
    -0.848211532, -0.689267071, -0.689267071, -0.583304097, -0.583304097, 
    -0.119716085, -0.119716085, 0.211418209, 0.211418209, 0.211418209, 
    0.211418209, 0.264399696, 0.264399696, 0.343871927, 0.343871927, 
    0.37036267, 0.37036267, 0.608779362, 0.608779362, 0.780969195, 
    0.780969195, 1.072367374, 1.072367374, 1.072367374, 1.072367374, 
    1.469728526, 1.469728526, 1.774372077, 1.774372077, 1.800862821, 
    1.800862821, 1.999543397, 1.999543397, 1.999543397, 1.999543397, 
    2.065770256, 2.065770256, 2.065770256, 2.065770256), Water.temperature = c(-1.820795427, 
    -1.820795427, -1.57382909, -1.57382909, -1.65181846, -1.65181846, 
    -1.805630828, -1.805630828, -1.744972429, -1.744972429, -1.770968885, 
    -1.770968885, -1.695145887, -1.695145887, -1.582494576, -1.582494576, 
    -0.761439823, -0.761439823, -1.565163604, -1.565163604, -0.724611509, 
    -0.724611509, -0.770105308, -0.770105308, -0.735443366, -0.735443366, 
    -0.765772566, -0.765772566, -0.724611509, -0.724611509, -0.759273452, 
    -0.759273452, -0.735443366, -0.735443366, -0.759273452, -0.759273452, 
    -0.735443366, -0.735443366, -1.82512817, -1.82512817, 1.469922697, 
    1.469922697, 1.337774043, 1.337774043, 1.424428898, 1.424428898, 
    1.320443072, 1.320443072, 1.359437757, 1.493752783, 1.359437757, 
    1.493752783, 1.342106786, 1.342106786, 1.346439529, 1.346439529, 
    1.485087297, 1.485087297, 1.294446616, 1.294446616, 0.726857314, 
    0.726857314, 0.516719291, 0.696528115, 0.516719291, 0.696528115, 
    0.464726378, 0.464726378, 0.724690943, 0.724690943, 0.746354657, 
    0.746354657, 0.601207774, 0.666198916, 0.601207774, 0.666198916, 
    0.430064436, 0.54704849, 0.430064436, 0.54704849, 1.469922697, 
    1.469922697, 1.337774043, 1.337774043, 1.424428898, 1.424428898, 
    1.320443072, 1.320443072, 1.359437757, 1.493752783, 1.359437757, 
    1.493752783, 1.342106786, 1.342106786, 1.346439529, 1.346439529, 
    1.485087297, 1.485087297, 1.294446616, 1.294446616, 0.726857314, 
    0.726857314, 0.516719291, 0.696528115, 0.516719291, 0.696528115, 
    0.464726378, 0.464726378, 0.724690943, 0.724690943, 0.746354657, 
    0.746354657, 0.601207774, 0.666198916, 0.601207774, 0.666198916, 
    0.430064436, 0.54704849, 0.430064436, 0.54704849, -1.820795427, 
    -1.820795427, -1.57382909, -1.57382909, -1.65181846, -1.65181846, 
    -1.805630828, -1.805630828, -1.744972429, -1.744972429, -1.770968885, 
    -1.770968885, -1.695145887, -1.695145887, -1.582494576, -1.582494576, 
    -0.761439823, -0.761439823, -1.565163604, -1.565163604, -0.724611509, 
    -0.724611509, -0.770105308, -0.770105308, -0.735443366, -0.735443366, 
    -0.765772566, -0.765772566, -0.724611509, -0.724611509, -0.759273452, 
    -0.759273452, -0.735443366, -0.735443366, -0.759273452, -0.759273452, 
    -0.735443366, -0.735443366, -1.82512817, -1.82512817, 1.469922697, 
    1.469922697, 1.337774043, 1.337774043, 1.424428898, 1.424428898, 
    1.320443072, 1.320443072, 1.359437757, 1.493752783, 1.359437757, 
    1.493752783, 1.342106786, 1.342106786, 1.346439529, 1.346439529, 
    1.485087297, 1.485087297, 1.294446616, 1.294446616, 0.726857314, 
    0.726857314, 0.516719291, 0.696528115, 0.516719291, 0.696528115, 
    0.464726378, 0.464726378, 0.724690943, 0.724690943, 0.746354657, 
    0.746354657, 0.601207774, 0.666198916, 0.601207774, 0.666198916, 
    0.430064436, 0.54704849, 0.430064436, 0.54704849), Wind.speed = c(0.342568876, 
    0.342568876, 0.342568876, 0.342568876, 0.342568876, 0.342568876, 
    0.342568876, 0.342568876, 0.342568876, 0.342568876, 0.342568876, 
    0.342568876, 0.342568876, 0.342568876, 0.342568876, 0.342568876, 
    0.860769967, 0.860769967, 0.342568876, 0.342568876, 0.860769967, 
    0.860769967, 0.860769967, 0.860769967, 0.860769967, 0.860769967, 
    0.860769967, 0.860769967, 0.860769967, 0.860769967, 0.860769967, 
    0.860769967, 0.860769967, 0.860769967, 0.860769967, 0.860769967, 
    0.860769967, 0.860769967, 0.342568876, 0.342568876, -1.532825682, 
    -1.532825682, -1.532825682, -1.532825682, -1.532825682, -1.532825682, 
    -1.532825682, -1.532825682, -1.532825682, -1.532825682, -1.532825682, 
    -1.532825682, -1.532825682, -1.532825682, -1.532825682, -1.532825682, 
    -1.532825682, -1.532825682, -1.532825682, -1.532825682, -0.854229153, 
    -0.854229153, -0.854229153, -0.854229153, -0.854229153, -0.854229153, 
    -0.854229153, -0.854229153, -0.854229153, -0.854229153, -0.854229153, 
    -0.854229153, -0.854229153, -0.854229153, -0.854229153, -0.854229153, 
    -0.854229153, -0.854229153, -0.854229153, -0.854229153, -1.532825682, 
    -1.532825682, -1.532825682, -1.532825682, -1.532825682, -1.532825682, 
    -1.532825682, -1.532825682, -1.532825682, -1.532825682, -1.532825682, 
    -1.532825682, -1.532825682, -1.532825682, -1.532825682, -1.532825682, 
    -1.532825682, -1.532825682, -1.532825682, -1.532825682, -0.854229153, 
    -0.854229153, -0.854229153, -0.854229153, -0.854229153, -0.854229153, 
    -0.854229153, -0.854229153, -0.854229153, -0.854229153, -0.854229153, 
    -0.854229153, -0.854229153, -0.854229153, -0.854229153, -0.854229153, 
    -0.854229153, -0.854229153, -0.854229153, -0.854229153, 0.342568876, 
    0.342568876, 0.342568876, 0.342568876, 0.342568876, 0.342568876, 
    0.342568876, 0.342568876, 0.342568876, 0.342568876, 0.342568876, 
    0.342568876, 0.342568876, 0.342568876, 0.342568876, 0.342568876, 
    0.860769967, 0.860769967, 0.342568876, 0.342568876, 0.860769967, 
    0.860769967, 0.860769967, 0.860769967, 0.860769967, 0.860769967, 
    0.860769967, 0.860769967, 0.860769967, 0.860769967, 0.860769967, 
    0.860769967, 0.860769967, 0.860769967, 0.860769967, 0.860769967, 
    0.860769967, 0.860769967, 0.342568876, 0.342568876, -1.532825682, 
    -1.532825682, -1.532825682, -1.532825682, -1.532825682, -1.532825682, 
    -1.532825682, -1.532825682, -1.532825682, -1.532825682, -1.532825682, 
    -1.532825682, -1.532825682, -1.532825682, -1.532825682, -1.532825682, 
    -1.532825682, -1.532825682, -1.532825682, -1.532825682, -0.854229153, 
    -0.854229153, -0.854229153, -0.854229153, -0.854229153, -0.854229153, 
    -0.854229153, -0.854229153, -0.854229153, -0.854229153, -0.854229153, 
    -0.854229153, -0.854229153, -0.854229153, -0.854229153, -0.854229153, 
    -0.854229153, -0.854229153, -0.854229153, -0.854229153)), .Names = c("SUR.ID", 
"Valid.detections", "distance", "wind.speed", "receiver.depth", 
"water.temperature", "Habitat", "Distance", "Receiver.depth", 
"Transmitter.depth", "Water.temperature", "Wind.speed"), class = "data.frame", row.names = c(NA, 
-200L))

在进行数据分析之前,我需要对我的预测变量进行缩放和居中处理。我使用了以下方法:

scale(... , center=T, scale=T)

df中缩放变量以大写字母开头,未缩放的变量则不是。

我得到的模型如下所示

m1 <- glmer(Valid.detections ~ Transmitter.depth + Receiver.depth + Water.temperature + 
                Wind.speed + Distance + (Distance | SUR.ID), data=df, family = poisson)

现在我已经有了所有预测变量的系数,我希望在给定特定环境值的情况下计算检测数量为y=0时的距离(此处未显示计算方法)。

x <- seq(from=1, to=1000)
X <- as.data.frame(x)     
 y <- exp(fixef(m2gg)["(Intercept)"] + fixef(m2gg)["Distance"]*X + fixef(m2gg)["Transmitter.depth"]*0.6067926 + 
      fixef(m2gg)["Receiver.depth"]*-0.1610828 + fixef(m2gg)["Water.temperature"]*-0.1128282 + 
      fixef(m2gg)["Wind.speed"]*-0.2959290)

然而,由于我对所有预测因子进行了缩放和居中处理,因此需要“取消缩放”和“取消居中”距离值,以便理解计算出的距离值。

更新:虽然上面的参数值是固定数字,但实际上它们只是一个接收器的值。最终,我想计算多个接收器的最大范围,给定每个接收器的随机截距和随机斜率的距离,这些值来自下面的迷你样本数据。

sample2 <- structure(list(X.Intercept. = c(-0.101691254, -0.184443307), 
        distance = c(0.002089427, -0.00065884), SUR.ID = 10185:10186, 
        water.temperature = c(24.272, 24.272), transmitter.depth = c(1.54925, 
        1.54925), receiver.depth = c(0.82625, 0.82625), wind.speed = c(6.745425839, 
        6.745425839), Water.temperature = c(-0.112828232, -0.112828232
        ), Transmitter.depth = c(0.606792556, 0.606792556), Receiver.depth = c(-0.16108278, 
        -0.16108278), Wind.speed = c(-0.295928998, -0.295928998)), .Names = c("X.Intercept.", 
    "distance", "SUR.ID", "water.temperature", "transmitter.depth", 
    "receiver.depth", "wind.speed", "Water.temperature", "Transmitter.depth", 
    "Receiver.depth", "Wind.speed"), class = "data.frame", row.names = c(NA, 
    -2L))

我似乎无法将您的最后三个命令包装在一个循环函数中,该函数运行次数与接收器数量相同。

L <- length(sample2$SUR.ID)
for (i in 1:L){
vals[i] <- '(Intercept)'=sample2[i,1],Transmitter.depth=sample2[i,11],
              Receiver.depth=sample2[i,8],Water.temperature=sample2[i,10],
              Wind.speed=sample2[i,13],distance=dist)
pred.obs[i] <- exp(cc %*% t(vals[i]))
max(dist[pred.obs>1])[i]
}

这个https://dev59.com/eH_aa4cB1Zd3GeqP6Kk1#23643740回答了你的问题吗? - Ben Bolker
@Ben:我应该在我的原始帖子中包含这些信息。我知道这个线程,因为它是唯一讨论无缩放的线程。然而,我不理解你的解决方案。通过复制粘贴您提出的解决方案以查看缩放和重新缩放(无缩放?)的工作方式,我尝试逐步理解它。但是,它似乎没有撤消缩放,因为它没有产生预测变量的起始值。 - FlyingDutch
你能提供一个可重现的例子吗?数据与https://dev59.com/feo6XIcBkEYKwwoYJA3p相同吗? - Ben Bolker
@Ben:我更新了我的原始帖子,并提供了一个可重现的示例。它类似于我其他帖子中的数据,但稍微更加精简,并包括了经过缩放和居中处理的预测变量。谢谢。 - FlyingDutch
1个回答

7
读取数据:
source("SO_unscale.txt")

将未缩放和已缩放的变量分开(Transmitter.depth似乎没有已缩放的变体)

unsc.vars <- subset(dd,select=c(Transmitter.depth,
                       receiver.depth,water.temperature,
                       wind.speed,distance))
sc.vars <- subset(dd,select=c(Transmitter.depth,
                     Receiver.depth,Water.temperature,
                     Wind.speed,Distance))

我注意到缩放变量的均值和标准差并完全为0/1,可能是因为这里的数据是数据集的子集。无论如何,为了进行反缩放,我们需要原始数据的均值和标准差。

colMeans(sc.vars)
apply(sc.vars,2,sd)
cm <- colMeans(unsc.vars)
csd <- apply(unsc.vars,2,sd)

即使新变量没有被准确居中/缩放,也可以进行“反缩放”(只需输入实际的移动/缩放量),但这会稍微复杂一些,因此我将使用精确居中/缩放的变量进行拟合。

## changed data name to dd
library(lme4)
cs. <- function(x) scale(x,center=TRUE,scale=TRUE)
m1 <- glmer(Valid.detections ~ Transmitter.depth +
            receiver.depth + water.temperature + 
            wind.speed + distance + (distance | SUR.ID),
            data=dd, family = poisson,
            control=glmerControl(optimizer=c("bobyqa","Nelder_Mead")))
## FAILS with bobyqa alone
m1.sc <- glmer(Valid.detections ~ cs.(Transmitter.depth) +
               cs.(receiver.depth) + cs.(water.temperature) + 
               cs.(wind.speed) + cs.(distance) + (cs.(distance) | SUR.ID),
               data=dd, family = poisson,
               control=glmerControl(optimizer=c("bobyqa","Nelder_Mead")))

重要的一点是,在这种情况下,非常不同的缩放似乎并没有造成任何伤害;缩放和未缩放的模型基本上具有相同的拟合度(如果重要的话,我们会期望缩放的拟合效果更好)

logLik(m1)-logLik(m1.sc)  ## 1e-7

这是之前回答中提供的重新调整大小的函数:

rescale.coefs <- function(beta,mu,sigma) {
    beta2 <- beta ## inherit names etc.
    beta2[-1] <- sigma[1]*beta[-1]/sigma[-1]
    beta2[1]  <- sigma[1]*beta[1]+mu[1]-sum(beta2[-1]*mu[-1])
    beta2
}     

参数确实非常接近。(移位/缩放向量包括响应变量的可能缩放/移位,因此我们从0/1开始,因为响应变量没有进行缩放[对于GLMM来说缩放响应变量很少有意义,但这个函数对于LMM也很有用]。)

(cc <- rescale.coefs(fixef(m1.sc),mu=c(0,cm),sigma=c(1,csd)))
##            (Intercept) cs.(Transmitter.depth)    cs.(receiver.depth) 
##            3.865879406            0.011158402           -0.554392645 
## cs.(water.temperature)        cs.(wind.speed)          cs.(distance) 
##           -0.050833325           -0.042188495           -0.007231021 

fixef(m1)
##  (Intercept) Transmitter.depth    receiver.depth water.temperature 
##  3.865816422       0.011180213      -0.554498582      -0.050830611 
##   wind.speed          distance 
## -0.042179333      -0.007231004 

因为它们是相同的(因为未缩放的模型适合),所以我们可以使用任何一组进行计算。

ddist <- 1:1000
vals <- cbind(`(Intercept)`=1,Transmitter.depth=0.6067926,
          Receiver.depth=-0.1610828,Water.temperature=-0.1128282,
          Wind.speed=-0.2959290,distance=ddist)
pred.obs <- exp(cc %*% t(vals))
max(ddist[pred.obs>1])

现在假设你想对具有交互作用或其他复杂性的模型进行类似的缩放/非缩放操作(即,固定效应模型矩阵的列所代表的预测变量不同于公式中出现的输入变量)。

m2 <- update(m1,. ~ . + wind.speed:distance)
m2.sc <- update(m1.sc,. ~ . + I(cs.(wind.speed*distance)))
logLik(m2)-logLik(m2.sc)

计算模型矩阵的均值/标准差,删除第一个(拦截)值:

X <- getME(m2,"X")                                        
cm2 <- colMeans(X)[-1]
csd2 <- apply(X,2,sd)[-1]                                            
(cc2 <- rescale.coefs(fixef(m2.sc),mu=c(0,cm2),sigma=c(1,csd2)))
all.equal(unname(cc2),unname(fixef(m2)),tol=1e-3)  ## TRUE

您实际上不必拟合完整的未缩放模型,就可以获得缩放参数:您可以使用model.matrix([formula],data)来推导出模型矩阵。也就是说,如果您还没有拟合m2,并且想要获取X以获取列的平均值和标准差。

X <- model.matrix(Valid.detections ~ Transmitter.depth + receiver.depth +
                      water.temperature + 
                      wind.speed + distance + 
                      wind.speed:distance,
                  data=dd)

如果您有一个线性混合模型/已经缩放了响应变量,那么您还应该将所有标准差(包括残差误差sigma(fitted_model))乘以响应变量的原始标准差。


你有比较过 length(fixef(m1.sc)), length(cm), length(csd) 吗?我认为后者应该比前者短一个(固定效应包括截距项;按设计,musigma 参数与 beta 长度相同,它们包含一个用于响应缩放的项以及每个固定效应参数的缩放项)。也许你的模型中有一个分类变量或其他类型的“派生”预测变量? - Ben Bolker
(1)你必须根据模型矩阵的列进行无标度化处理(即从技术上讲,是预测变量而不是输入变量);(2)考虑随机效应有点棘手,可能需要另一个问题(r-sig-mixed-models可能更合适);(3)如果你的标度和非标度模型收敛到相同的似然度,则可以忽略警告,也不必担心所有这些标度问题。 - Ben Bolker
嗨,本,未缩放模型和缩放模型之间的对数似然差为-0.08...这个结果可以接受吗?我能使用未缩放模型来计算最大检测范围吗? - FlyingDutch
我怕“可接受”的标准取决于您自己。在这种情况下,我认为问题是模型对特定情况的预测有多大差异,以及这是否足够大,让您感到担忧。 - Ben Bolker
@Ben Bolker。非常有用的函数。谢谢。这个函数能否用于从模型拟合中取消缩放SE?在我的情况下,我无法拟合未缩放的模型而不出现警告信息。看起来我仍然可以使用您的函数,但我想知道您在最后两行中的意思:“您实际上不必拟合完整的未缩放模型就可以获得缩放参数:您可以使用model.matrix([formula],data)来导出模型矩阵。”我也可以发布一个新帖子。 - B. Davis
显示剩余3条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接