Related
I know I can calculate models' estimates by hand, but I'm sure there's a way to get all model estimates for all categorical levels automatically. Since I'm dealing with lmers, maybe this should be suitable. Note: I don't want to predict new data, I just wanna get all estimates automatically. (just edited the post to make it easier to understand)
an example:
> model <- lmer(Score ~ Proficiency_c * testType + (1|ID), data = myData, REML = F)
> summary(model)
Fixed effects:
Estimate Std. Error df t value Pr(>|t|)
(Intercept) 4.8376 0.2803 156.9206 17.259 < 2e-16 ***
Proficiency_c -1.3381 0.4405 156.9206 -3.038 0.00279 **
testTypeTestB 0.2088 0.3269 126.0000 0.639 0.52421
testTypeTestC 0.4638 0.3269 126.0000 1.418 0.15853
Proficiency_c:testTypeTestB 0.5008 0.5138 126.0000 0.975 0.33157
Proficiency_c:testTypeTestC 0.2357 0.5138 126.0000 0.459 0.64727
---
> contrasts(myData$testType)
TestB TestC
TestA 0 0
TestB 1 0
TestC 0 1
'by hand', I would:
## estimate for Test A:
y = b0 + b1x1 + b2x2 + b3x3 + b4(x1 * x2) + b5(x1 * x3)
y = b0 + b1 * 1 + 0 + 0 + 0
y = b0 + b1
y = 3.49
## estimate for Test B:
y = b0 + b1x1 + b2x2 + b3x3 + b4(x1 * x2) + b5(x1 * x3)
y = b0 + b1 * 1 + b2 * 1 + 0 + b4(1 * 1) + 0
y = b0 + b2 + (b1 + b4)x1
y = 4.20
## estimate for Test C:
y = b0 + b1x1 + b2x2 + b3x3 + b4(x1 * x2) + b5(x1 * x3)
y = b0 + b1 * 1 + b2 * 0 + b3 * 1 + 0 + b5 (1 * 1)
y = b0 + b3 + (b1 + b5)x1
y = 4.19
edited question
I usually deal with people who don't know how to come up with the model's estimates by themselves, so I usually have to calculate them all 'by hand'. I just wish there was a way to get all 'ys' estimates concerning each categorical level (as I did 'by hand' above) without doing that manually? Again, for now, I don't want to predict new values. Thanks in advance!
data:
dput(myData)
structure(list(ID = c("p1", "p1", "p1", "p2", "p2", "p2", "p3",
"p3", "p3", "p4", "p4", "p4", "p5", "p5", "p5", "p6", "p6", "p6",
"p7", "p7", "p7", "p8", "p8", "p8", "p9", "p9", "p9", "p10",
"p10", "p10", "p11", "p11", "p11", "p12", "p12", "p12", "p13",
"p13", "p13", "p14", "p14", "p14", "p15", "p15", "p15", "p16",
"p16", "p16", "p17", "p17", "p17", "p18", "p18", "p18", "p19",
"p19", "p19", "p20", "p20", "p20", "p21", "p21", "p21", "p22",
"p22", "p22", "p23", "p23", "p23", "p24", "p24", "p24", "p25",
"p25", "p25", "p26", "p26", "p26", "p27", "p27", "p27", "p28",
"p28", "p28", "p29", "p29", "p29", "p30", "p30", "p30", "p31",
"p31", "p31", "p32", "p32", "p32", "p33", "p33", "p33", "p34",
"p34", "p34", "p35", "p35", "p35", "p36", "p36", "p36", "p37",
"p37", "p37", "p38", "p38", "p38", "p39", "p39", "p39", "p40",
"p40", "p40", "p41", "p41", "p41", "p42", "p42", "p42", "p43",
"p43", "p43", "p44", "p44", "p44", "p45", "p45", "p45", "p46",
"p46", "p46", "p47", "p47", "p47", "p48", "p48", "p48", "p49",
"p49", "p49", "p50", "p50", "p50", "p51", "p51", "p51", "p52",
"p52", "p52", "p53", "p53", "p53", "p54", "p54", "p54", "p55",
"p55", "p55", "p56", "p56", "p56", "p57", "p57", "p57", "p58",
"p58", "p58", "p59", "p59", "p59", "p60", "p60", "p60", "p61",
"p61", "p61", "p62", "p62", "p62", "p63", "p63", "p63"), Score = c(5.33,
5.05, 5.15, 5.82, 2.29, 7.54, 4.46, 2.43, 1.53, 8.97, 7.69, 7.21,
6.76, 8.41, 3.77, 3.33, 11.57, 7.69, 2.15, 3.84, 3.29, 3.36,
6.66, 5.6, 4.23, 4.41, 3.07, 2.29, 4.9, 4.46, 3.22, 1.72, 2.08,
4.47, 2.4, 2.54, 2.73, 6.57, 7.31, 4.46, 9.27, 4.31, 4.54, 6.32,
8.97, 3.44, 4.68, 9.7, 2.15, 5.68, 5.26, 9.3, 5.68, 8.97, 4.65,
4.13, 4.57, 11.22, 11.39, 7.52, 3.94, 4.47, 3.52, 5, 8, 5.81,
2.96, 4.05, 2.22, 4.41, 5.64, 4.79, 2.43, 2.5, 4.16, 7.57, 9.21,
2.59, 3.12, 3.84, 7.76, 8.77, 5.08, 7.81, 4.49, 2.17, 7.4, 5.81,
4.9, 3.19, 3.2, 2.72, 3.67, 4.42, 3.57, 1.02, 4.42, 2.45, 5.88,
7.84, 4.93, 9.61, 3.75, 1.8, 3.47, 0.65, 1.39, 2.9, 6.36, 2.77,
2.67, 6.89, 6.74, 6.81, 1.94, 3.22, 3.12, 4.08, 5.31, 11.23,
4.1, 4.28, 3.89, 2.98, 3.52, 3.64, 3.63, 5.08, 4.9, 6.66, 7.56,
3.14, 5.26, 1.03, 4.58, 2.9, 2.5, 3.57, 4, 7.54, 3.5, 5.19, 2.56,
2.38, 1.4, 3.97, 2, 8.69, 5.33, 6.42, 3.62, 2.59, 4.63, 4.85,
6.87, 5.55, 3.14, 2.29, 4.68, 7.76, 3.53, 8.88, 3.44, 8, 5.15,
6.77, 12.28, 6.25, 4.91, 7.01, 7.4, 5.21, 3, 4.87, 7.5, 5.47,
8.97, 7.89, 7.54, 9.25, 7.24, 5.37, 6.41, 2.94, 5.47, 7.14, 5.4,
5.06, 6.32), Proficiency_c = c(0.44, 0.44, 0.44, 0.69, 0.69,
0.69, 1.24, 1.24, 1.24, -0.16, -0.16, -0.16, 1.14, 1.14, 1.14,
0.69, 0.69, 0.69, -0.26, -0.26, -0.26, 0.94, 0.94, 0.94, -0.26,
-0.26, -0.26, 1.04, 1.04, 1.04, 0.39, 0.39, 0.39, -0.06, -0.06,
-0.06, -0.41, -0.41, -0.41, 0.54, 0.54, 0.54, -0.51, -0.51, -0.51,
-0.81, -0.81, -0.81, 0.14, 0.14, 0.14, -0.31, -0.31, -0.31, 0.44,
0.44, 0.44, -0.11, -0.11, -0.11, -0.21, -0.21, -0.21, -0.51,
-0.51, -0.51, 0.24, 0.24, 0.24, 0.59, 0.59, 0.59, -0.21, -0.21,
-0.21, -0.66, -0.66, -0.66, -0.06, -0.06, -0.06, -1.01, -1.01,
-1.01, -0.26, -0.26, -0.26, 0.19, 0.19, 0.19, 0.84, 0.84, 0.84,
-0.11, -0.11, -0.11, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.79,
0.79, 0.79, 1.09, 1.09, 1.09, -0.76, -0.76, -0.76, 0.14, 0.14,
0.14, 0.64, 0.64, 0.64, 0.49, 0.49, 0.49, -0.71, -0.71, -0.71,
-0.31, -0.31, -0.31, -0.11, -0.11, -0.11, -0.61, -0.61, -0.61,
0.19, 0.19, 0.19, -0.36, -0.36, -0.36, -0.31, -0.31, -0.31, -1.01,
-1.01, -1.01, 1.19, 1.19, 1.19, -0.96, -0.96, -0.96, 0.99, 0.99,
0.99, 0.74, 0.74, 0.74, 0.24, 0.24, 0.24, -0.06, -0.06, -0.06,
-0.31, -0.31, -0.31, -0.66, -0.66, -0.66, -0.96, -0.96, -0.96,
0.89, 0.89, 0.89, -0.96, -0.96, -0.96, -1.01, -1.01, -1.01, -0.66,
-0.66, -0.66, -0.71, -0.71, -0.71, -0.36, -0.36, -0.36), testType = structure(c(1L,
2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L,
3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L,
1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L,
2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L,
3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L,
1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L,
2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L,
3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L,
1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L,
2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L,
3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L,
1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L), .Label = c("TestA",
"TestB", "TestC"), class = "factor")), row.names = c(NA, -189L
), class = c("tbl_df", "tbl", "data.frame"))
I'm not sure why you're calculating predictions at a reference proficiency of 1 (0 would be the default), but maybe you're looking for emmeans?
library(emmeans)
emmeans(model, ~testType, at = list(Proficiency_c=1))
The at = argument is the way to specify in emmeans that we want to calculate marginal means with the non-focal parameters (Proficiency_c in this case) set to a value other than the default [typically the mean of a numeric covariate]. See vignette("basics", package = "emmeans") (emmeans has many high-quality vignettes). It's specified as a list because we may have multiple non-focal parameters to set.
Results:
NOTE: Results may be misleading due to involvement in interactions
testType emmean SE df lower.CL upper.CL
TestA 3.50 0.529 162 2.45 4.54
TestB 4.21 0.529 162 3.16 5.25
TestC 4.20 0.529 162 3.15 5.24
Degrees-of-freedom method: kenward-roger
Confidence level used: 0.95
If you're looking for the estimated slope within each test type, use emtrends:
emtrends(model, ~testType, "Proficiency_c")
testType Proficiency_c.trend SE df lower.CL upper.CL
TestA -1.338 0.448 162 -2.22 -0.4541
TestB -0.837 0.448 162 -1.72 0.0467
TestC -1.102 0.448 162 -1.99 -0.2185
Degrees-of-freedom method: kenward-roger
Confidence level used: 0.95
My data structure is based in 151 individuals x 51 variables (1 categorical variable made up by 3 categories or groups(OO, NUTS, LFD), and 50 continuous numerical variables). The background of the experiment is based in 3 interventions in which patients go through different treatments. The variables are gene expression results in the form of numbers, which I intend to form clusters or to observe groups.
Of course, there are MISSING values. The missing values due to lack of samples of the individuals could be related to the clinical trial itself. However, in my database, the one I am going to attach a slice sample, missingness I would say is completely at random. Why is that? The individuals that attended to periodical meetings, get their blood collected and afterwards due to processing erros, have several genes amplified, and others not amplified, from my standpoint, is random. It is true that in the origin could be related somehow to the clinical trial.
Reviewing the potential approaches, I found the missMDA package, which I have been reviewing lately. My first doubt, which I think is correct is to confirm if the MFA is the best approach to analyse my database. Other options could be:
PCA excluding the categorical variable to run quantitative variables?
FAMD looks like more to combine quantitative and qualitative, not very much as a grouping variable as it is my case
The 'gene' example database (provided in missMDA package) is similar to mine, and the approach is MFA, and the theorical basis (I am not an expert) looks like to me correct. However following the steps in 'missMDA: A Package for Handling Missing Values
in Multivariate Data Analysis' I find the next errors (I have tried several options formulating the group):
#The ncp estimated excluding the group using PCA approach (just quantiative continuous variabes was 5, the variables are scaled type = "s"
res.mfa <- imputeMFA(PCA[, -1], group = c(2:51), type = "s", ncp = 5)
# Error in if (type[g] == "s") { : missing value where TRUE/FALSE needed
res.mfa <- imputeMFA(df[, -1], group = 50, type = "s", ncp = 5)
#Error in (cumsum(group.mod)[g - 1] + 1):cumsum(group.mod)[g] : NA/NaN argument
The df example reduced to body limitation (is already standardized (scale funtion))
df <- structure(list(grup_int = structure(c(3L, 3L, 3L, 2L, 3L, 1L,
1L, 3L, 3L, 3L, 1L, 3L, 3L, 3L, 3L, 3L, 3L, 1L, 1L, 3L, 3L, 2L,
1L, 1L, 1L, 3L, 3L, 2L, 3L, 1L, 1L, 3L, 3L, 1L, 3L, 2L, 3L, 2L,
1L, 2L, 3L, 3L, 2L, 2L, 3L, 3L, 2L, 2L, 3L, 3L, 2L, 2L, 2L, 2L,
1L, 2L, 1L, 1L, 3L, 2L, 1L, 2L, 2L, 1L, 3L, 3L, 3L, 3L, 1L, 2L,
1L, 2L, 1L, 3L, 2L, 2L, 1L, 2L, 2L, 1L, 3L, 1L, 2L, 1L, 1L, 2L,
2L, 2L, 1L, 1L, 1L, 3L, 1L, 1L, 1L, 3L, 3L, 3L, 3L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 3L, 1L, 2L, 2L, 2L, 2L, 1L,
2L, 3L, 2L, 2L, 3L, 2L, 2L, 1L, 1L, 2L, 3L, 2L, 2L, 1L, 1L, 1L,
1L, 3L, 2L, 3L, 3L, 1L, 3L, 3L, 2L, 2L, 3L, 1L, 1L, 2L, 2L, 2L,
3L), levels = c("OO", "NUTS", "LFD"), label = "GENERAL: Grupo de intervención", class = "factor"),
ppara = structure(c(2.882, -0.091, -0.519, NA, NA, NA, 0.102,
NA, NA, -0.292, NA, 0.73, 0.555, -0.11, -1.022, -0.027, 0.114,
NA, 0.593, -0.768, -0.53, NA, NA, -0.224, -0.327, -0.952,
-0.185, NA, NA, -0.52, -1.175, 0.286, NA, -0.398, NA, -0.144,
NA, NA, NA, -0.903, NA, -0.258, -0.897, -0.751, -0.662, -0.628,
-0.779, NA, NA, 0.743, 0.142, NA, NA, NA, NA, -0.607, -0.739,
-0.437, NA, -1.152, -1.272, 0.608, 1.317, -0.547, 3.081,
0.647, -0.799, -0.682, -0.354, NA, 0.031, NA, 1.992, 3.665,
NA, NA, -0.027, -0.318, -0.916, NA, NA, NA, -0.31, -1.113,
-0.089, -0.391, NA, 0.134, -0.574, -0.291, -0.012, NA, NA,
-0.607, NA, -1.018, -0.702, NA, 1.624, 0.841, 0.869, NA,
0.373, -0.857, 0.007, 0.099, NA, -0.613, -0.005, 1.059, 1.525,
2.504, NA, NA, -0.737, -0.864, NA, NA, -0.901, -0.257, 0.968,
NA, -0.743, -0.023, NA, NA, NA, -0.219, NA, 0.226, -0.366,
-0.788, NA, -0.942, -0.215, NA, -0.659, -0.532, 3.052, 1.426,
NA, 0.366, -0.52, 0.377, NA, 1.421, NA, NA, NA, NA, NA), dim = c(151L,
1L), "`scaled:center`" = 1.35197894736842, "`scaled:scale`" = 0.835827593173089),
ppard = structure(c(0.214, -0.376, -0.152, -0.121, -0.147,
0.681, 0.373, 0.144, 0.291, -0.554, -0.344, -0.463, 0.565,
-0.612, -1.073, -0.038, 0.373, -0.801, 0.052, -0.765, -0.891,
0.56, 0.059, -0.396, -0.447, -0.83, -0.088, -0.543, -0.126,
-0.678, -0.769, 0.079, NA, -0.345, NA, -0.12, -0.845, 0.182,
-0.234, -0.785, 0.257, -0.035, -0.426, -0.428, -0.668, -0.51,
-0.626, -0.264, -0.588, -0.508, -0.184, NA, 2.647, -0.403,
-0.99, -0.727, 0.047, -0.487, -0.286, -0.865, -0.841, 3.273,
0.653, -0.439, 3.509, 0.653, -0.971, -0.298, -0.343, NA,
0.44, 0.143, 0.847, 5.239, 0.973, 2.861, 0.36, -0.538, 4.029,
-0.154, -0.361, -0.047, -0.222, -1.302, -0.047, -0.005, NA,
0.507, -0.244, -0.38, -0.116, -0.958, NA, -0.194, NA, -0.713,
-0.498, 0.239, 0.405, 1.012, 0.542, 0.22, 0.846, -0.455,
-0.003, 0.477, -0.096, -0.301, 0.85, 0.575, 0.606, 0.713,
NA, -1.197, -0.766, -0.846, -0.583, -0.53, -0.246, -1.062,
-0.221, -0.265, -1.083, -0.449, -1.117, -0.899, 0.146, -0.561,
-0.471, 0.171, -0.263, -0.33, 0.028, -0.625, -0.564, 4.08,
-0.444, 0.092, 0.581, 0.14, -0.112, -0.349, 0.198, 0.077,
NA, -0.409, NA, 0.05, 0.489, NA, 0.903), dim = c(151L, 1L
), "`scaled:center`" = 1.40111428571429, "`scaled:scale`" = 0.811830324669782),
pparg = structure(c(1.298, -0.171, 0.056, 0.017, -0.428,
0.257, 0.719, -0.1, 1.28, -0.19, 0.344, -0.629, 1.572, -0.713,
-0.739, 1.027, 0.22, -0.321, -1.283, -1.283, 0.1, -0.38,
0.257, -0.325, -0.572, -0.705, -0.442, -1.129, NA, -1.129,
-0.869, 2.129, NA, 0.044, NA, -0.352, -0.568, 1.976, -0.823,
-0.843, 0.529, -0.046, -0.223, -0.646, -0.308, 0.227, 0.028,
-0.352, -0.097, 0.054, -0.512, NA, 3.624, 0.399, -0.588,
-0.986, -0.672, -0.612, 0.362, -1.199, -0.896, -0.675, 0.354,
-0.641, 3.271, 0.3, -1.196, -0.789, -0.285, NA, -0.244, -0.156,
1.765, 4.562, 1.241, NA, -0.407, -0.84, 2.605, 0.016, -0.619,
-0.317, -0.472, -1.337, -0.555, -0.932, NA, 0.312, -0.4,
-1.241, 0.22, -0.937, NA, -0.134, NA, -0.241, -0.176, 0.138,
-0.716, 0.312, 0.061, -0.682, 0.609, 0.174, -0.07, -0.554,
-0.224, 0.107, 0.228, 0.491, 2.581, 1.164, NA, -0.368, -0.816,
-0.471, -0.126, -0.144, -0.281, -0.635, 0.618, 0.649, -1.601,
-0.913, -1.271, -0.756, 0.529, 0.047, -0.922, 1.729, -1.05,
0.01, 0.8, 1.488, 0.452, 1.876, -0.13, 0.485, -0.041, 0.211,
-0.859, -0.621, -0.515, -0.177, NA, -0.632, NA, -0.545, 1.322,
NA, 1.602), dim = c(151L, 1L), "`scaled:center`" = 1.2910652173913, "`scaled:scale`" = 0.700929843387113),
nr1h3 = structure(c(0.407, 0.244, -0.42, -0.013, -0.829,
0.492, 0.881, 0.171, -0.709, 0.22, 0.026, -0.45, 0.262, 1.012,
-0.847, 0.484, -0.607, -0.601, -0.821, -0.194, -0.568, 0.673,
-0.607, -0.458, -0.494, -0.492, 0.623, -0.93, -0.058, -0.41,
-0.784, 0.052, -2.094, 0.07, NA, 0.272, 0.024, 0.458, 0.832,
-0.75, 0.074, 0.766, -0.158, 0.463, -0.184, -0.469, -0.269,
-0.387, -0.337, -0.271, 1.308, NA, NA, -0.497, -0.944, -1.006,
-1.024, -0.783, 0.276, -1.132, -0.827, -0.343, 2.697, -0.497,
NA, 0.897, NA, -0.294, 0.517, NA, 0.236, 0.241, 0.679, NA,
2.847, 2.11, 0.069, 1.473, 4.445, NA, NA, NA, -0.207, -1.697,
-0.069, 0.105, NA, 1.004, NA, NA, -0.428, -1.257, NA, 1.736,
NA, -0.691, 0.09, 0.226, 0.674, -0.55, 0.699, -0.258, 0.906,
-0.691, 0.768, 0.484, -0.199, -0.62, 0.128, 0.742, 2.149,
0.737, NA, -1.296, NA, -0.545, 0.495, -0.888, -0.926, -0.97,
-0.279, -0.028, -1.396, -1.321, -1.254, -0.858, -0.592, -0.691,
-0.885, 0.077, 0.641, -0.643, -0.286, -0.932, -0.77, 4.228,
-0.589, 0.254, 0.947, -0.461, -0.469, 0.023, -0.476, -0.071,
NA, -0.445, NA, -0.207, 0.469, NA, 2.62), dim = c(151L, 1L
), "`scaled:center`" = 1.30208396946565, "`scaled:scale`" = 0.609461200104939),
nr1h2 = structure(c(-0.49, 0.333, -0.525, -0.673, -0.442,
-0.029, 0.504, 0.169, -0.193, -0.641, -0.405, 0.01, 1.152,
0.002, -0.478, -0.514, -0.077, -0.61, -0.404, -0.544, -0.434,
0.448, 0.162, -0.463, -0.447, -0.81, -0.209, -0.194, 0.637,
-0.427, -0.366, -0.211, -1.252, -0.205, NA, -0.003, -0.277,
0.027, 0.172, -0.569, 0.343, 0.601, -0.468, -0.254, 0.001,
0.092, -0.416, -0.224, -0.518, -0.356, -0.401, NA, 1.952,
-0.607, -0.721, -0.481, -0.375, -0.499, -0.01, -0.822, -0.704,
0.01, 0.686, -0.429, 6.483, 0.214, -0.302, 0.019, -0.323,
NA, 0.566, 0.441, 0.273, 2.845, 0.409, 4.469, 0.115, -0.21,
4.747, 0.324, -0.453, -0.528, -0.057, -0.943, -0.463, -0.127,
NA, 0.056, -0.343, -0.05, -0.539, -0.785, NA, -0.327, NA,
-0.466, -0.413, -0.181, 0.43, 0.548, -0.098, 0.565, 0.487,
-0.571, 0.046, 0.251, 0.113, 0.382, 0.343, 0.919, 0.215,
0.433, NA, -0.757, -0.711, -0.656, -0.525, -0.482, -0.268,
-0.714, -0.101, 0.093, -0.493, -0.626, -0.845, -0.7, -0.48,
-0.404, -0.668, -0.028, 0.2, -0.506, -0.078, -0.84, -0.54,
3.735, -0.366, -0.326, 0.271, 0.199, -0.624, -0.504, 0.573,
-0.131, NA, -0.212, NA, 0.092, 0.175, NA, 0.61), dim = c(151L,
1L), "`scaled:center`" = 1.38648936170213, "`scaled:scale`" = 1.07206008371747),
rxra = structure(c(0.003, -0.137, -0.372, -0.339, 0.001,
-0.083, 0.371, -0.04, -0.286, -0.707, -0.405, 0.067, 0.205,
-0.515, -0.48, -0.25, -0.28, -0.408, -0.649, -0.735, -0.722,
0.391, -0.008, 0.584, -0.517, -0.531, -0.268, -0.405, NA,
0.39, -0.025, -0.02, NA, -0.119, NA, -0.586, -0.449, -0.152,
-0.343, -0.126, -0.528, 0.012, -0.769, 0.074, -0.213, -0.501,
-0.624, -0.602, -0.847, -0.655, -0.619, NA, 2.641, -0.764,
-0.931, -0.833, 0.084, -0.065, -0.135, -0.77, -0.665, 0.893,
0.544, -0.512, 7.66, 0.111, -0.297, 0.248, -0.305, NA, 0.041,
0.515, 0.562, 4.191, 0.701, 1.726, -0.371, -0.225, 2.191,
0.063, -0.714, 0.049, 0.049, -1.099, -0.875, -0.101, NA,
-0.152, -0.058, 0.084, -0.564, -0.49, NA, 0.138, NA, -0.592,
-0.782, 0.033, 0.165, 0.161, 0.576, 1.449, 2.191, -0.21,
-0.182, 0.547, 0.163, 0.057, 1.104, 0.842, 0.208, 0.941,
NA, -0.817, -0.543, -0.4, -0.344, -0.747, -0.811, -1.077,
-0.334, 0.312, -0.541, -0.726, -0.872, -0.365, -0.232, 0.04,
-0.334, -0.111, -0.304, -0.476, 0.172, -0.389, -0.233, 3.064,
-0.104, -0.063, -0.049, 0.686, -0.851, -0.243, -0.098, 0.067,
NA, -0.076, NA, 0.112, 0.429, NA, 0.241), dim = c(151L, 1L
), "`scaled:center`" = 1.39937410071942, "`scaled:scale`" = 0.869319134487005),
rxrb = structure(c(-0.489, -0.548, 0.591, 0.137, 0.814, 0.161,
-0.204, -0.242, -0.408, -0.65, -0.242, 0.987, 0.468, -0.6,
-1.373, -0.739, -0.917, -0.565, -0.633, -0.833, -0.81, 0.509,
0.217, 0.388, -0.067, -0.614, -0.055, -0.185, 0.416, 0.94,
-0.399, 0.106, -1.652, -0.902, NA, -0.224, -0.289, -0.568,
0.219, -0.61, -0.913, 0.299, -0.743, -0.183, -0.251, -0.699,
-1.232, -0.43, -0.297, -0.664, -0.273, NA, 3.264, 0.207,
-0.849, -0.253, -0.134, -0.762, 0.206, -0.693, -0.627, 0.747,
-0.139, -0.043, 4.043, 0.643, -0.319, -0.16, -0.185, NA,
0.083, 0.399, 0.147, 6.611, 0.054, -1.572, 0.721, -0.009,
-1.597, -0.062, 1.607, 0.272, -0.169, -1.139, 1.191, 0.293,
NA, 0.196, 0.383, -0.531, 0.02, 3.971, NA, 0.246, NA, -0.154,
-0.51, 0.083, 0.838, 0.19, 0.446, 0.083, 0.219, 1.676, -0.353,
0.421, -0.163, 0.091, 0.758, 0.625, 0.79, 0.084, NA, -0.956,
-0.775, -0.26, -0.446, -0.898, -0.439, -0.713, -0.93, -0.587,
-0.918, -0.161, -0.408, -0.216, -0.311, -0.168, 0.107, 0.15,
0.634, 0.853, 0.179, -0.47, -0.796, -1.533, 0.429, -0.155,
0.578, 0.741, 0.193, 0.067, -0.334, -0.016, NA, -0.006, NA,
0.053, 0.837, NA, -0.265), dim = c(151L, 1L), "`scaled:center`" = 1.39233333333333, "`scaled:scale`" = 0.828513485248186),
cyp27a1 = structure(c(-0.366, -0.342, -0.257, -0.731, 0.498,
-0.251, 1.016, -0.209, 0.086, -0.84, 0.399, -0.466, 0.022,
-0.54, -0.085, 0.018, -0.248, -0.82, -0.666, -0.821, -0.443,
0.187, -0.135, -0.433, 0.494, -0.57, -0.332, -0.088, NA,
-0.004, -0.705, 0.502, NA, -0.313, NA, -0.471, -0.423, -0.398,
-0.272, -0.82, 0.102, 0.183, -0.703, -0.155, -0.437, -0.427,
-0.739, -0.292, -0.586, -0.574, -0.284, NA, NA, -0.42, -1.099,
-0.879, -0.527, -0.609, -0.227, -0.827, -0.765, 6.111, 1.02,
-0.66, NA, 0.53, -0.424, 0.055, -0.184, NA, 0.633, 0.364,
0.418, NA, 0.229, 2.879, -0.264, -0.285, 3.73, 0.569, 0.053,
-0.368, -0.2, -1.217, -0.249, -0.318, NA, 0.37, 0.15, -0.23,
0.258, -0.623, NA, 0.183, NA, -0.321, -0.534, 0.537, -0.046,
0.809, 0.899, 1.415, 1.484, -0.158, -0.109, 0.863, -0.256,
0.281, 0.94, 1.062, 1.988, 0.064, NA, -0.455, -0.959, -0.437,
-0.657, -0.82, 0.022, -0.927, -0.821, 0.878, -1.189, -0.121,
-1.278, -0.811, -0.653, -0.54, -0.576, -0.266, 0.11, -0.433,
-0.075, -0.617, -0.682, 4.587, 0.149, -0.146, 0.384, 0.917,
-0.38, -0.17, 0.082, -0.301, NA, -0.176, NA, 0.135, -0.007,
NA, 2.875), dim = c(151L, 1L), "`scaled:center`" = 1.37367647058824, "`scaled:scale`" = 0.862860015103544),
abca1 = structure(c(-0.275, 0.339, -0.655, -0.414, -0.611,
0.548, -0.053, -0.25, 0.157, -0.472, -0.555, -0.329, 0.027,
-0.017, -0.442, 0.044, -0.191, -0.52, -0.685, -0.778, -0.503,
0.33, 0.045, -0.593, -0.279, -0.651, -0.192, 0.161, -0.159,
0.023, -0.304, 1.422, NA, -0.06, NA, -0.379, -0.488, -0.313,
-0.336, -0.056, -0.7, -0.563, -0.631, -0.275, -0.742, -0.394,
-0.655, -0.432, -0.616, -0.642, -0.141, NA, 0.3, -0.336,
-0.975, -0.667, -0.418, -0.325, 0.318, -0.852, -0.577, -0.766,
0.772, -0.559, 7.974, 0.385, -0.653, -0.261, -0.474, NA,
-0.007, 0.203, 0.908, 2.893, 1.629, 1.134, -0.125, 0.149,
4.345, 1.047, 0.223, -0.071, -0.296, -0.814, -0.64, 0.255,
NA, -0.277, -0.065, 0.479, -0.375, -0.422, NA, 0.292, NA,
-0.422, 0.515, 0.309, 0.11, 0.717, 0.468, 1.66, 1.869, -0.286,
0.075, 0.288, 0.092, -0.088, 0.473, -0.19, 0.548, 0.37, NA,
-0.824, -0.697, -0.561, -0.549, -0.529, -0.846, -0.768, -0.818,
0.101, -0.316, -0.727, -0.192, -0.498, -0.784, 0.324, -0.654,
0.626, -0.297, -0.268, -0.002, -0.21, -0.193, 2.531, 0.516,
-0.403, -0.064, 0.461, -0.481, 0.154, 0.215, -0.275, NA,
-0.527, NA, -0.642, 0.003, NA, 0.59), dim = c(151L, 1L), "`scaled:center`" = 1.66513571428571, "`scaled:scale`" = 1.46050537823946)), row.names = c("50109018",
"50109019", "50109025", "50109026", "50109027", "50118001", "50202099",
"50203004", "50203006", "50203008", "50203009", "50203010", "50203011",
"50203012", "50203013", "50203014", "50203015", "50203016", "50203017",
"50203019", "50203020", "50203022", "50203026", "50203027", "50203029",
"50203030", "50203031", "50203032", "50430001", "50508026", "50508027",
"50521001", "50521002", "50527001", "50601001", "50705001", "60901020",
"60901021", "60901023", "60901024", "60901026", "60901027", "60901028",
"60901029", "60901030", "60901031", "60901033", "60901034", "60901035",
"60901036", "60901037", "60901038", "70107034", "70111021", "70111022",
"70111023", "70111024", "70201047", "70204055", "70204056", "70211014",
"70710002", "70713001", "70713002", "70802011", "70802012", "70802013",
"70802015", "71801001", "71801002", "71801003", "110104017",
"110104019", "110104023", "110104024", "110104027", "110104028",
"110104029", "110104030", "110110005", "110113001", "110113003",
"110113005", "110113006", "110113007", "110113008", "110606056",
"110606061", "111201006", "111201007", "111201014", "111201017",
"111201019", "111201026", "111202007", "111202009", "111202015",
"120715011", "120715012", "120715019", "120715020", "120715021",
"120715022", "120715025", "120715026", "120715027", "120715029",
"120715030", "120715032", "120715033", "120715034", "120715035",
"120715037", "130102008", "130102009", "130102010", "130102012",
"130102013", "130102014", "130104004", "130105044", "130105045",
"130106034", "130106037", "130106038", "130108008", "130108009",
"140101088", "140101091", "140101096", "140101097", "140101099",
"140102087", "140102088", "140102089", "140102090", "140102092",
"140102095", "140103019", "140103020", "140103023", "140103024",
"140103026", "140103027", "140103028", "140103029", "140103030",
"140103033", "140103035", "140103036", "140103038"), class = "data.frame")
It seems like there was a problem where the number of groups is 1. There are a few lines of code that look like:
for (g in 2:length(group))
ind.var[[g]] <- (cumsum(group.mod)[g - 1] + 1):cumsum(group.mod)[g]
With one group, this fails because rather than counting up from 2 to the number of groups, it's counting down from 2 to 1. If you make this line active only if the length(group) > 1 with an if() statement, then it works. I implemented this in a fork of the missMDA package from CRAN. Here's how an example.
df <- structure(list(grup_int = structure(c(3L, 3L, 3L, 2L, 3L, 1L,
1L, 3L, 3L, 3L, 1L, 3L, 3L, 3L, 3L, 3L, 3L, 1L, 1L, 3L, 3L, 2L,
1L, 1L, 1L, 3L, 3L, 2L, 3L, 1L, 1L, 3L, 3L, 1L, 3L, 2L, 3L, 2L,
1L, 2L, 3L, 3L, 2L, 2L, 3L, 3L, 2L, 2L, 3L, 3L, 2L, 2L, 2L, 2L,
1L, 2L, 1L, 1L, 3L, 2L, 1L, 2L, 2L, 1L, 3L, 3L, 3L, 3L, 1L, 2L,
1L, 2L, 1L, 3L, 2L, 2L, 1L, 2L, 2L, 1L, 3L, 1L, 2L, 1L, 1L, 2L,
2L, 2L, 1L, 1L, 1L, 3L, 1L, 1L, 1L, 3L, 3L, 3L, 3L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 3L, 1L, 2L, 2L, 2L, 2L, 1L,
2L, 3L, 2L, 2L, 3L, 2L, 2L, 1L, 1L, 2L, 3L, 2L, 2L, 1L, 1L, 1L,
1L, 3L, 2L, 3L, 3L, 1L, 3L, 3L, 2L, 2L, 3L, 1L, 1L, 2L, 2L, 2L,
3L), levels = c("OO", "NUTS", "LFD"), label = "GENERAL: Grupo de intervención", class = "factor"),
ppara = structure(c(2.882, -0.091, -0.519, NA, NA, NA, 0.102,
NA, NA, -0.292, NA, 0.73, 0.555, -0.11, -1.022, -0.027, 0.114,
NA, 0.593, -0.768, -0.53, NA, NA, -0.224, -0.327, -0.952,
-0.185, NA, NA, -0.52, -1.175, 0.286, NA, -0.398, NA, -0.144,
NA, NA, NA, -0.903, NA, -0.258, -0.897, -0.751, -0.662, -0.628,
-0.779, NA, NA, 0.743, 0.142, NA, NA, NA, NA, -0.607, -0.739,
-0.437, NA, -1.152, -1.272, 0.608, 1.317, -0.547, 3.081,
0.647, -0.799, -0.682, -0.354, NA, 0.031, NA, 1.992, 3.665,
NA, NA, -0.027, -0.318, -0.916, NA, NA, NA, -0.31, -1.113,
-0.089, -0.391, NA, 0.134, -0.574, -0.291, -0.012, NA, NA,
-0.607, NA, -1.018, -0.702, NA, 1.624, 0.841, 0.869, NA,
0.373, -0.857, 0.007, 0.099, NA, -0.613, -0.005, 1.059, 1.525,
2.504, NA, NA, -0.737, -0.864, NA, NA, -0.901, -0.257, 0.968,
NA, -0.743, -0.023, NA, NA, NA, -0.219, NA, 0.226, -0.366,
-0.788, NA, -0.942, -0.215, NA, -0.659, -0.532, 3.052, 1.426,
NA, 0.366, -0.52, 0.377, NA, 1.421, NA, NA, NA, NA, NA), dim = c(151L,
1L), "`scaled:center`" = 1.35197894736842, "`scaled:scale`" = 0.835827593173089),
ppard = structure(c(0.214, -0.376, -0.152, -0.121, -0.147,
0.681, 0.373, 0.144, 0.291, -0.554, -0.344, -0.463, 0.565,
-0.612, -1.073, -0.038, 0.373, -0.801, 0.052, -0.765, -0.891,
0.56, 0.059, -0.396, -0.447, -0.83, -0.088, -0.543, -0.126,
-0.678, -0.769, 0.079, NA, -0.345, NA, -0.12, -0.845, 0.182,
-0.234, -0.785, 0.257, -0.035, -0.426, -0.428, -0.668, -0.51,
-0.626, -0.264, -0.588, -0.508, -0.184, NA, 2.647, -0.403,
-0.99, -0.727, 0.047, -0.487, -0.286, -0.865, -0.841, 3.273,
0.653, -0.439, 3.509, 0.653, -0.971, -0.298, -0.343, NA,
0.44, 0.143, 0.847, 5.239, 0.973, 2.861, 0.36, -0.538, 4.029,
-0.154, -0.361, -0.047, -0.222, -1.302, -0.047, -0.005, NA,
0.507, -0.244, -0.38, -0.116, -0.958, NA, -0.194, NA, -0.713,
-0.498, 0.239, 0.405, 1.012, 0.542, 0.22, 0.846, -0.455,
-0.003, 0.477, -0.096, -0.301, 0.85, 0.575, 0.606, 0.713,
NA, -1.197, -0.766, -0.846, -0.583, -0.53, -0.246, -1.062,
-0.221, -0.265, -1.083, -0.449, -1.117, -0.899, 0.146, -0.561,
-0.471, 0.171, -0.263, -0.33, 0.028, -0.625, -0.564, 4.08,
-0.444, 0.092, 0.581, 0.14, -0.112, -0.349, 0.198, 0.077,
NA, -0.409, NA, 0.05, 0.489, NA, 0.903), dim = c(151L, 1L
), "`scaled:center`" = 1.40111428571429, "`scaled:scale`" = 0.811830324669782),
pparg = structure(c(1.298, -0.171, 0.056, 0.017, -0.428,
0.257, 0.719, -0.1, 1.28, -0.19, 0.344, -0.629, 1.572, -0.713,
-0.739, 1.027, 0.22, -0.321, -1.283, -1.283, 0.1, -0.38,
0.257, -0.325, -0.572, -0.705, -0.442, -1.129, NA, -1.129,
-0.869, 2.129, NA, 0.044, NA, -0.352, -0.568, 1.976, -0.823,
-0.843, 0.529, -0.046, -0.223, -0.646, -0.308, 0.227, 0.028,
-0.352, -0.097, 0.054, -0.512, NA, 3.624, 0.399, -0.588,
-0.986, -0.672, -0.612, 0.362, -1.199, -0.896, -0.675, 0.354,
-0.641, 3.271, 0.3, -1.196, -0.789, -0.285, NA, -0.244, -0.156,
1.765, 4.562, 1.241, NA, -0.407, -0.84, 2.605, 0.016, -0.619,
-0.317, -0.472, -1.337, -0.555, -0.932, NA, 0.312, -0.4,
-1.241, 0.22, -0.937, NA, -0.134, NA, -0.241, -0.176, 0.138,
-0.716, 0.312, 0.061, -0.682, 0.609, 0.174, -0.07, -0.554,
-0.224, 0.107, 0.228, 0.491, 2.581, 1.164, NA, -0.368, -0.816,
-0.471, -0.126, -0.144, -0.281, -0.635, 0.618, 0.649, -1.601,
-0.913, -1.271, -0.756, 0.529, 0.047, -0.922, 1.729, -1.05,
0.01, 0.8, 1.488, 0.452, 1.876, -0.13, 0.485, -0.041, 0.211,
-0.859, -0.621, -0.515, -0.177, NA, -0.632, NA, -0.545, 1.322,
NA, 1.602), dim = c(151L, 1L), "`scaled:center`" = 1.2910652173913, "`scaled:scale`" = 0.700929843387113),
nr1h3 = structure(c(0.407, 0.244, -0.42, -0.013, -0.829,
0.492, 0.881, 0.171, -0.709, 0.22, 0.026, -0.45, 0.262, 1.012,
-0.847, 0.484, -0.607, -0.601, -0.821, -0.194, -0.568, 0.673,
-0.607, -0.458, -0.494, -0.492, 0.623, -0.93, -0.058, -0.41,
-0.784, 0.052, -2.094, 0.07, NA, 0.272, 0.024, 0.458, 0.832,
-0.75, 0.074, 0.766, -0.158, 0.463, -0.184, -0.469, -0.269,
-0.387, -0.337, -0.271, 1.308, NA, NA, -0.497, -0.944, -1.006,
-1.024, -0.783, 0.276, -1.132, -0.827, -0.343, 2.697, -0.497,
NA, 0.897, NA, -0.294, 0.517, NA, 0.236, 0.241, 0.679, NA,
2.847, 2.11, 0.069, 1.473, 4.445, NA, NA, NA, -0.207, -1.697,
-0.069, 0.105, NA, 1.004, NA, NA, -0.428, -1.257, NA, 1.736,
NA, -0.691, 0.09, 0.226, 0.674, -0.55, 0.699, -0.258, 0.906,
-0.691, 0.768, 0.484, -0.199, -0.62, 0.128, 0.742, 2.149,
0.737, NA, -1.296, NA, -0.545, 0.495, -0.888, -0.926, -0.97,
-0.279, -0.028, -1.396, -1.321, -1.254, -0.858, -0.592, -0.691,
-0.885, 0.077, 0.641, -0.643, -0.286, -0.932, -0.77, 4.228,
-0.589, 0.254, 0.947, -0.461, -0.469, 0.023, -0.476, -0.071,
NA, -0.445, NA, -0.207, 0.469, NA, 2.62), dim = c(151L, 1L
), "`scaled:center`" = 1.30208396946565, "`scaled:scale`" = 0.609461200104939),
nr1h2 = structure(c(-0.49, 0.333, -0.525, -0.673, -0.442,
-0.029, 0.504, 0.169, -0.193, -0.641, -0.405, 0.01, 1.152,
0.002, -0.478, -0.514, -0.077, -0.61, -0.404, -0.544, -0.434,
0.448, 0.162, -0.463, -0.447, -0.81, -0.209, -0.194, 0.637,
-0.427, -0.366, -0.211, -1.252, -0.205, NA, -0.003, -0.277,
0.027, 0.172, -0.569, 0.343, 0.601, -0.468, -0.254, 0.001,
0.092, -0.416, -0.224, -0.518, -0.356, -0.401, NA, 1.952,
-0.607, -0.721, -0.481, -0.375, -0.499, -0.01, -0.822, -0.704,
0.01, 0.686, -0.429, 6.483, 0.214, -0.302, 0.019, -0.323,
NA, 0.566, 0.441, 0.273, 2.845, 0.409, 4.469, 0.115, -0.21,
4.747, 0.324, -0.453, -0.528, -0.057, -0.943, -0.463, -0.127,
NA, 0.056, -0.343, -0.05, -0.539, -0.785, NA, -0.327, NA,
-0.466, -0.413, -0.181, 0.43, 0.548, -0.098, 0.565, 0.487,
-0.571, 0.046, 0.251, 0.113, 0.382, 0.343, 0.919, 0.215,
0.433, NA, -0.757, -0.711, -0.656, -0.525, -0.482, -0.268,
-0.714, -0.101, 0.093, -0.493, -0.626, -0.845, -0.7, -0.48,
-0.404, -0.668, -0.028, 0.2, -0.506, -0.078, -0.84, -0.54,
3.735, -0.366, -0.326, 0.271, 0.199, -0.624, -0.504, 0.573,
-0.131, NA, -0.212, NA, 0.092, 0.175, NA, 0.61), dim = c(151L,
1L), "`scaled:center`" = 1.38648936170213, "`scaled:scale`" = 1.07206008371747),
rxra = structure(c(0.003, -0.137, -0.372, -0.339, 0.001,
-0.083, 0.371, -0.04, -0.286, -0.707, -0.405, 0.067, 0.205,
-0.515, -0.48, -0.25, -0.28, -0.408, -0.649, -0.735, -0.722,
0.391, -0.008, 0.584, -0.517, -0.531, -0.268, -0.405, NA,
0.39, -0.025, -0.02, NA, -0.119, NA, -0.586, -0.449, -0.152,
-0.343, -0.126, -0.528, 0.012, -0.769, 0.074, -0.213, -0.501,
-0.624, -0.602, -0.847, -0.655, -0.619, NA, 2.641, -0.764,
-0.931, -0.833, 0.084, -0.065, -0.135, -0.77, -0.665, 0.893,
0.544, -0.512, 7.66, 0.111, -0.297, 0.248, -0.305, NA, 0.041,
0.515, 0.562, 4.191, 0.701, 1.726, -0.371, -0.225, 2.191,
0.063, -0.714, 0.049, 0.049, -1.099, -0.875, -0.101, NA,
-0.152, -0.058, 0.084, -0.564, -0.49, NA, 0.138, NA, -0.592,
-0.782, 0.033, 0.165, 0.161, 0.576, 1.449, 2.191, -0.21,
-0.182, 0.547, 0.163, 0.057, 1.104, 0.842, 0.208, 0.941,
NA, -0.817, -0.543, -0.4, -0.344, -0.747, -0.811, -1.077,
-0.334, 0.312, -0.541, -0.726, -0.872, -0.365, -0.232, 0.04,
-0.334, -0.111, -0.304, -0.476, 0.172, -0.389, -0.233, 3.064,
-0.104, -0.063, -0.049, 0.686, -0.851, -0.243, -0.098, 0.067,
NA, -0.076, NA, 0.112, 0.429, NA, 0.241), dim = c(151L, 1L
), "`scaled:center`" = 1.39937410071942, "`scaled:scale`" = 0.869319134487005),
rxrb = structure(c(-0.489, -0.548, 0.591, 0.137, 0.814, 0.161,
-0.204, -0.242, -0.408, -0.65, -0.242, 0.987, 0.468, -0.6,
-1.373, -0.739, -0.917, -0.565, -0.633, -0.833, -0.81, 0.509,
0.217, 0.388, -0.067, -0.614, -0.055, -0.185, 0.416, 0.94,
-0.399, 0.106, -1.652, -0.902, NA, -0.224, -0.289, -0.568,
0.219, -0.61, -0.913, 0.299, -0.743, -0.183, -0.251, -0.699,
-1.232, -0.43, -0.297, -0.664, -0.273, NA, 3.264, 0.207,
-0.849, -0.253, -0.134, -0.762, 0.206, -0.693, -0.627, 0.747,
-0.139, -0.043, 4.043, 0.643, -0.319, -0.16, -0.185, NA,
0.083, 0.399, 0.147, 6.611, 0.054, -1.572, 0.721, -0.009,
-1.597, -0.062, 1.607, 0.272, -0.169, -1.139, 1.191, 0.293,
NA, 0.196, 0.383, -0.531, 0.02, 3.971, NA, 0.246, NA, -0.154,
-0.51, 0.083, 0.838, 0.19, 0.446, 0.083, 0.219, 1.676, -0.353,
0.421, -0.163, 0.091, 0.758, 0.625, 0.79, 0.084, NA, -0.956,
-0.775, -0.26, -0.446, -0.898, -0.439, -0.713, -0.93, -0.587,
-0.918, -0.161, -0.408, -0.216, -0.311, -0.168, 0.107, 0.15,
0.634, 0.853, 0.179, -0.47, -0.796, -1.533, 0.429, -0.155,
0.578, 0.741, 0.193, 0.067, -0.334, -0.016, NA, -0.006, NA,
0.053, 0.837, NA, -0.265), dim = c(151L, 1L), "`scaled:center`" = 1.39233333333333, "`scaled:scale`" = 0.828513485248186),
cyp27a1 = structure(c(-0.366, -0.342, -0.257, -0.731, 0.498,
-0.251, 1.016, -0.209, 0.086, -0.84, 0.399, -0.466, 0.022,
-0.54, -0.085, 0.018, -0.248, -0.82, -0.666, -0.821, -0.443,
0.187, -0.135, -0.433, 0.494, -0.57, -0.332, -0.088, NA,
-0.004, -0.705, 0.502, NA, -0.313, NA, -0.471, -0.423, -0.398,
-0.272, -0.82, 0.102, 0.183, -0.703, -0.155, -0.437, -0.427,
-0.739, -0.292, -0.586, -0.574, -0.284, NA, NA, -0.42, -1.099,
-0.879, -0.527, -0.609, -0.227, -0.827, -0.765, 6.111, 1.02,
-0.66, NA, 0.53, -0.424, 0.055, -0.184, NA, 0.633, 0.364,
0.418, NA, 0.229, 2.879, -0.264, -0.285, 3.73, 0.569, 0.053,
-0.368, -0.2, -1.217, -0.249, -0.318, NA, 0.37, 0.15, -0.23,
0.258, -0.623, NA, 0.183, NA, -0.321, -0.534, 0.537, -0.046,
0.809, 0.899, 1.415, 1.484, -0.158, -0.109, 0.863, -0.256,
0.281, 0.94, 1.062, 1.988, 0.064, NA, -0.455, -0.959, -0.437,
-0.657, -0.82, 0.022, -0.927, -0.821, 0.878, -1.189, -0.121,
-1.278, -0.811, -0.653, -0.54, -0.576, -0.266, 0.11, -0.433,
-0.075, -0.617, -0.682, 4.587, 0.149, -0.146, 0.384, 0.917,
-0.38, -0.17, 0.082, -0.301, NA, -0.176, NA, 0.135, -0.007,
NA, 2.875), dim = c(151L, 1L), "`scaled:center`" = 1.37367647058824, "`scaled:scale`" = 0.862860015103544),
abca1 = structure(c(-0.275, 0.339, -0.655, -0.414, -0.611,
0.548, -0.053, -0.25, 0.157, -0.472, -0.555, -0.329, 0.027,
-0.017, -0.442, 0.044, -0.191, -0.52, -0.685, -0.778, -0.503,
0.33, 0.045, -0.593, -0.279, -0.651, -0.192, 0.161, -0.159,
0.023, -0.304, 1.422, NA, -0.06, NA, -0.379, -0.488, -0.313,
-0.336, -0.056, -0.7, -0.563, -0.631, -0.275, -0.742, -0.394,
-0.655, -0.432, -0.616, -0.642, -0.141, NA, 0.3, -0.336,
-0.975, -0.667, -0.418, -0.325, 0.318, -0.852, -0.577, -0.766,
0.772, -0.559, 7.974, 0.385, -0.653, -0.261, -0.474, NA,
-0.007, 0.203, 0.908, 2.893, 1.629, 1.134, -0.125, 0.149,
4.345, 1.047, 0.223, -0.071, -0.296, -0.814, -0.64, 0.255,
NA, -0.277, -0.065, 0.479, -0.375, -0.422, NA, 0.292, NA,
-0.422, 0.515, 0.309, 0.11, 0.717, 0.468, 1.66, 1.869, -0.286,
0.075, 0.288, 0.092, -0.088, 0.473, -0.19, 0.548, 0.37, NA,
-0.824, -0.697, -0.561, -0.549, -0.529, -0.846, -0.768, -0.818,
0.101, -0.316, -0.727, -0.192, -0.498, -0.784, 0.324, -0.654,
0.626, -0.297, -0.268, -0.002, -0.21, -0.193, 2.531, 0.516,
-0.403, -0.064, 0.461, -0.481, 0.154, 0.215, -0.275, NA,
-0.527, NA, -0.642, 0.003, NA, 0.59), dim = c(151L, 1L),
"`scaled:center`" = 1.66513571428571,
"`scaled:scale`" = 1.46050537823946)), row.names = c("50109018",
"50109019", "50109025", "50109026", "50109027", "50118001", "50202099",
"50203004", "50203006", "50203008", "50203009", "50203010", "50203011",
"50203012", "50203013", "50203014", "50203015", "50203016", "50203017",
"50203019", "50203020", "50203022", "50203026", "50203027", "50203029",
"50203030", "50203031", "50203032", "50430001", "50508026", "50508027",
"50521001", "50521002", "50527001", "50601001", "50705001", "60901020",
"60901021", "60901023", "60901024", "60901026", "60901027", "60901028",
"60901029", "60901030", "60901031", "60901033", "60901034", "60901035",
"60901036", "60901037", "60901038", "70107034", "70111021", "70111022",
"70111023", "70111024", "70201047", "70204055", "70204056", "70211014",
"70710002", "70713001", "70713002", "70802011", "70802012", "70802013",
"70802015", "71801001", "71801002", "71801003", "110104017",
"110104019", "110104023", "110104024", "110104027", "110104028",
"110104029", "110104030", "110110005", "110113001", "110113003",
"110113005", "110113006", "110113007", "110113008", "110606056",
"110606061", "111201006", "111201007", "111201014", "111201017",
"111201019", "111201026", "111202007", "111202009", "111202015",
"120715011", "120715012", "120715019", "120715020", "120715021",
"120715022", "120715025", "120715026", "120715027", "120715029",
"120715030", "120715032", "120715033", "120715034", "120715035",
"120715037", "130102008", "130102009", "130102010", "130102012",
"130102013", "130102014", "130104004", "130105044", "130105045",
"130106034", "130106037", "130106038", "130108008", "130108009",
"140101088", "140101091", "140101096", "140101097", "140101099",
"140102087", "140102088", "140102089", "140102090", "140102092",
"140102095", "140103019", "140103020", "140103023", "140103024",
"140103026", "140103027", "140103028", "140103029", "140103030",
"140103033", "140103035", "140103036", "140103038"), class = "data.frame")
remotes::install_github("davidaarmstrong/missmda", force=TRUE)
library(missMDA)
res.mfa <- imputeMFA(df[, -1], group = 9, type = "s", ncp = 5)
I would like to make shade on certain date each year in time-series plot that is similar to this: Using geom_rect for time series shading in R
However, I got error:
Error: Aesthetics must be valid data columns. Problematic aesthetic(s): x = Date.
Did you mistype the name of a data column or forget to add after_stat()?
What is the meaning of that error? I'm sure the error come from geom_rect function, but I don't know how to fix it.
Here is the example of my data:
structure(list(Date = structure(c(4018, 4019, 4020, 4021, 4022,
4023, 4024, 4025, 4026, 4027, 4028, 4029, 4030, 4031, 4032, 4033,
4034, 4035, 4036, 4037, 4038, 4039, 4040, 4041, 4042, 4043, 4044,
4045, 4046, 4047, 4048, 4049, 4050, 4051, 4052, 4053, 4054, 4055,
4056, 4057, 4058, 4059, 4060, 4061, 4062, 4063, 4064, 4065, 4066,
4067, 4068, 4069, 4070, 4071, 4072, 4073, 4074, 4075, 4076, 4077,
4078, 4079, 4080, 4081, 4082, 4083, 4084, 4085, 4086, 4087, 4088,
4089, 4090, 4091, 4092, 4093, 4094, 4095, 4096, 4097, 4098, 4099,
4100, 4101, 4102, 4103, 4104, 4105, 4106, 4107, 4108, 4109, 4110,
4111, 4112, 4113, 4114, 4115, 4116, 4117, 4118, 4119, 4120, 4121,
4122, 4123, 4124, 4125, 4126, 4127, 4128, 4129, 4130, 4131, 4132,
4133, 4134, 4135, 4136, 4137, 4138, 4139, 4140, 4141, 4142, 4143,
4144, 4145, 4146, 4147, 4148, 4149, 4150, 4151, 4152, 4153, 4154,
4155, 4156, 4157, 4158, 4159, 4160, 4161, 4162, 4163, 4164, 4165,
4166, 4167, 4168, 4169, 4170, 4171, 4172, 4173, 4174, 4175, 4176,
4177, 4178, 4179, 4180, 4181, 4182, 4183, 4184, 4185, 4186, 4187,
4188, 4189, 4190, 4191, 4192, 4193, 4194, 4195, 4196, 4197, 4198,
4199, 4200, 4201, 4202, 4203, 4204, 4205, 4206, 4207, 4208, 4209,
4210, 4211, 4212, 4213, 4214, 4215, 4216, 4217, 4218, 4219, 4220,
4221, 4222, 4223, 4224, 4225, 4226, 4227, 4228, 4229, 4230, 4231,
4232, 4233, 4234, 4235, 4236, 4237, 4238, 4239, 4240, 4241, 4242,
4243, 4244, 4245, 4246, 4247, 4248, 4249, 4250, 4251, 4252, 4253,
4254, 4255, 4256, 4257, 4258, 4259, 4260, 4261, 4262, 4263, 4264,
4265, 4266, 4267, 4268, 4269, 4270, 4271, 4272, 4273, 4274, 4275,
4276, 4277, 4278, 4279, 4280, 4281, 4282, 4283, 4284, 4285, 4286,
4287, 4288, 4289, 4290, 4291, 4292, 4293, 4294, 4295, 4296, 4297,
4298, 4299, 4300, 4301, 4302, 4303, 4304, 4305, 4306, 4307, 4308,
4309, 4310, 4311, 4312, 4313, 4314, 4315, 4316, 4317, 4318, 4319,
4320, 4321, 4322, 4323, 4324, 4325, 4326, 4327, 4328, 4329, 4330,
4331, 4332, 4333, 4334, 4335, 4336, 4337, 4338, 4339, 4340, 4341,
4342, 4343, 4344, 4345, 4346, 4347, 4348, 4349, 4350, 4351, 4352,
4353, 4354, 4355, 4356, 4357, 4358, 4359, 4360, 4361, 4362, 4363,
4364, 4365, 4366, 4367, 4368, 4369, 4370, 4371, 4372, 4373, 4374,
4375, 4376, 4377, 4378, 4379, 4380, 4381, 4382, 4383, 4384, 4385,
4386, 4387, 4388, 4389, 4390, 4391, 4392, 4393, 4394, 4395, 4396,
4397, 4398, 4399, 4400, 4401, 4402, 4403, 4404, 4405, 4406, 4407,
4408, 4409, 4410, 4411, 4412, 4413, 4414, 4415, 4416, 4417, 4418,
4419, 4420, 4421, 4422, 4423, 4424, 4425, 4426, 4427, 4428, 4429,
4430, 4431, 4432, 4433, 4434, 4435, 4436, 4437, 4438, 4439, 4440,
4441, 4442, 4443, 4444, 4445, 4446, 4447, 4448, 4449, 4450, 4451,
4452, 4453, 4454, 4455, 4456, 4457, 4458, 4459, 4460, 4461, 4462,
4463, 4464, 4465, 4466, 4467, 4468, 4469, 4470, 4471, 4472, 4473,
4474, 4475, 4476, 4477, 4478, 4479, 4480, 4481, 4482, 4483, 4484,
4485, 4486, 4487, 4488, 4489, 4490, 4491, 4492, 4493, 4494, 4495,
4496, 4497, 4498, 4499, 4500, 4501, 4502, 4503, 4504, 4505, 4506,
4507, 4508, 4509, 4510, 4511, 4512, 4513, 4514, 4515, 4516, 4517,
4518, 4519, 4520, 4521, 4522, 4523, 4524, 4525, 4526, 4527, 4528,
4529, 4530, 4531, 4532, 4533, 4534, 4535, 4536, 4537, 4538, 4539,
4540, 4541, 4542, 4543, 4544, 4545, 4546, 4547, 4548, 4549, 4550,
4551, 4552, 4553, 4554, 4555, 4556, 4557, 4558, 4559, 4560, 4561,
4562, 4563, 4564, 4565, 4566, 4567, 4568, 4569, 4570, 4571, 4572,
4573, 4574, 4575, 4576, 4577, 4578, 4579, 4580, 4581, 4582, 4583,
4584, 4585, 4586, 4587, 4588, 4589, 4590, 4591, 4592, 4593, 4594,
4595, 4596, 4597, 4598, 4599, 4600, 4601, 4602, 4603, 4604, 4605,
4606, 4607, 4608, 4609, 4610, 4611, 4612, 4613, 4614, 4615, 4616,
4617, 4618, 4619, 4620, 4621, 4622, 4623, 4624, 4625, 4626, 4627,
4628, 4629, 4630, 4631, 4632, 4633, 4634, 4635, 4636, 4637, 4638,
4639, 4640, 4641, 4642, 4643, 4644, 4645, 4646, 4647, 4648, 4649,
4650, 4651, 4652, 4653, 4654, 4655, 4656, 4657, 4658, 4659, 4660,
4661, 4662, 4663, 4664, 4665, 4666, 4667, 4668, 4669, 4670, 4671,
4672, 4673, 4674, 4675, 4676, 4677, 4678, 4679, 4680, 4681, 4682,
4683, 4684, 4685, 4686, 4687, 4688, 4689, 4690, 4691, 4692, 4693,
4694, 4695, 4696, 4697, 4698, 4699, 4700, 4701, 4702, 4703, 4704,
4705, 4706, 4707, 4708, 4709, 4710, 4711, 4712, 4713, 4714, 4715,
4716, 4717, 4718, 4719, 4720, 4721, 4722, 4723, 4724, 4725, 4726,
4727, 4728, 4729, 4730, 4731, 4732, 4733, 4734, 4735, 4736, 4737,
4738, 4739, 4740, 4741, 4742, 4743, 4744, 4745, 4746, 4747), class = "Date"),
Cu = c(1.25, 1.25, 1.25, 1.25, 1.15, 1.15, 1.15, 1.15, 1.15,
1.15, 1.15, 1.75, 1.75, 1.75, 1.75, 1.75, 1.75, 1.75, 1.75,
2.66, 2.66, 2.66, 2.66, 2.66, 2.66, 1.24, 1.24, 1.24, 1.24,
1.24, 1.24, 1.24, 3.71, 3.71, 3.71, 3.71, 3.71, 3.71, 3.71,
1.85, 1.85, 1.85, 1.85, 1.85, 1.85, 1.85, 2.13, 2.13, 2.13,
2.13, 2.13, 2.13, 2.13, 0.73, 0.73, 0.73, 0.73, 0.73, 0.73,
0.73, 0.47, 0.47, 0.47, 0.47, 0.47, 0.47, 0.47, 0.4, 0.4,
0.4, 0.4, 0.4, 0.4, 0.4, 0.4, NA, NA, NA, NA, NA, NA, 1.12,
1.12, 1.12, 1.12, 1.12, 1.12, 1.12, 1.71, 1.71, 1.71, 1.71,
1.71, 1.71, 1.71, 1.71, NA, NA, NA, NA, NA, NA, 1.28, 1.28,
1.28, 1.28, 1.28, 1.28, 1.28, 1.28, 0.9, 0.9, 0.9, 0.9, 0.9,
0.9, 1.59, 1.59, 1.59, 1.59, 1.59, 1.59, 1.59, 1.59, 1.59,
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.58, 0.58, 0.58, 0.58, 0.58, 0.58, 0.58, 0.58,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, 0.8, 0.8, 0.8, 0.8, 0.8, 0.8, 0.8, 0.8,
0.8, NA, NA, NA, NA, NA, 0.76, 0.76, 0.76, 0.76, 0.76, 0.76,
0.76, 0.76, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, 0.69, 0.69, 0.69, 0.69, 0.69, 0.69, 0.69, 0.65, 0.65,
0.65, 0.65, 0.65, 0.65, 0.65, 0.76, 0.76, 0.76, 0.76, 0.76,
0.76, 0.76, 0.84, 0.84, 0.84, 0.84, 0.84, 0.84, 0.84, 0.84,
NA, NA, NA, NA, NA, NA, 0.68, 0.68, 0.68, 0.68, 0.68, 0.68,
0.68, 0.68, NA, NA, NA, NA, NA, NA, 1.16, 1.16, 1.16, 1.16,
1.16, 1.16, 1.16, 0.67, 0.67, 0.67, 0.67, 0.67, 0.67, 0.67,
0.94, 0.94, 0.94, 0.94, 0.94, 0.94, 0.94, 0.6, 0.6, 0.6,
0.6, 0.6, 0.6, 0.6, 1.72, 1.72, 1.72, 1.72, 1.72, 1.72, 1.72,
1.43, 1.43, 1.43, 1.43, 1.43, 1.43, 1.43, 1.43, 1.43, NA,
NA, NA, NA, NA, 1.31, 1.31, 1.31, 1.31, 1.31, 1.31, 1.31,
1.89, 1.89, 1.89, 1.89, 1.89, 1.89, 1.89, 0.7, 0.7, 0.7,
0.7, 0.7, 0.7, 0.7, 4.35, 4.35, 4.35, 4.35, 4.35, 4.35, 4.35,
1.48, 1.48, 1.48, 1.48, 1.48, 1.48, 1.48, 4.5, 4.5, 4.5,
4.5, 4.5, 4.5, 4.5, 1.95, 1.95, 1.95, 1.95, 1.95, 1.95, 1.95,
1.95, NA, NA, NA, NA, NA, NA, 1.41, 1.41, 1.41, 1.41, 1.41,
1.41, 1.41, 1.01, 1.01, 1.01, 1.01, 1.01, 1.01, 1.01, 3.44,
3.44, 3.44, 3.44, 3.44, 3.44, 3.44, 3.01, 3.01, 3.01, 3.01,
3.01, 3.01, 3.01, 3.28, 3.28, 3.28, 3.28, 3.28, 3.28, 3.28,
0.94, 0.94, 0.94, 0.94, 0.94, 0.94, 0.94, 3.08, 3.08, 3.08,
3.08, 3.08, 3.08, 3.08, 3.08, 3.38, 3.38, 3.38, 3.38, 3.38,
3.38, 1.86, 1.86, 1.86, 1.86, 1.86, 1.86, 1.86, 1.85, 1.85,
1.85, 1.85, 1.85, 1.85, 1.85, 2.25, 2.25, 2.25, 2.25, 2.25,
2.25, 2.25, 2.25, 1.8, 1.8, 1.8, 1.8, 1.8, 1.8, 2.93, 2.93,
2.93, 2.93, 2.93, 2.93, 2.93, 1.09, 1.09, 1.09, 1.09, 1.09,
1.09, 1.09, 0.97, 0.97, 0.97, 0.97, 0.97, 0.97, 0.97, 0.57,
0.57, 0.57, 0.57, 0.57, 0.57, 0.57, 0.57, 0.57, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, 0.49, 0.49, 0.49, 0.49,
0.49, 0.49, 0.49, 0.49, 0.49, 0.49, NA, NA, NA, NA, 0.8,
0.8, 0.8, 0.8, 0.8, 0.8, 0.8, 0.51, 0.51, 0.51, 0.51, 0.51,
0.51, 0.51, 0.51, 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, 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, 2.48, 2.48, 2.48, 2.48, 2.48, 2.48,
0.66, 0.66, 0.66, 0.66, 0.66, 0.66, 0.66, 0.72, 0.72, 0.72,
0.72, 0.72, 0.72, 0.72, 1.35, 1.35, 1.35, 1.35, 1.35, 1.35,
1.35, 0.65, 0.65, 0.65, 0.65, 0.65, 0.65, 0.65, 1.84, 1.84,
1.84, 1.84, 1.84, 1.84, 1.84, 2.56, 2.56, 2.56, 2.56, 2.56,
2.56, 2.56, 1.21, 1.21, 1.21, 1.21, 1.21, 1.21, 1.21, 1.73,
1.73, 1.73, 1.73, 1.73, 1.73, 1.73, 1.33, 1.33, 1.33, 1.33,
1.33, 1.33, 1.33, 1.33, 1.33, 1.33, 1.33, 1.33, 1.33, 1.33,
1.33, 1.33, 1.33, 1.33, 1.33, 1.33, 1.33, 1.33, 1.33, 1.33,
1.33, 1.33, 1.33, 1.33, 2.23, 2.23, 2.23, 2.23, 2.23, 2.23,
2.23, 0.89, 0.89, 0.89, 0.89, 0.89, 0.89, 0.89, 3.7, 3.7,
3.7, 3.7, 3.7), Pb = c(3.58, 3.58, 3.58, 3.58, 3, 3, 3, 3,
3, 3, 3, 3.89, 3.89, 3.89, 3.89, 3.89, 3.89, 3.89, 3.89,
5.4, 5.4, 5.4, 5.4, 5.4, 5.4, 4.24, 4.24, 4.24, 4.24, 4.24,
4.24, 4.24, 4.08, 4.08, 4.08, 4.08, 4.08, 4.08, 4.08, 3.42,
3.42, 3.42, 3.42, 3.42, 3.42, 3.42, 3.11, 3.11, 3.11, 3.11,
3.11, 3.11, 3.11, 1.68, 1.68, 1.68, 1.68, 1.68, 1.68, 1.68,
0.67, 0.67, 0.67, 0.67, 0.67, 0.67, 0.67, 1.19, 1.19, 1.19,
1.19, 1.19, 1.19, 1.19, 1.63, 1.63, 1.63, 1.63, 1.63, 1.63,
1.63, 2.22, 2.22, 2.22, 2.22, 2.22, 2.22, 2.22, 2.25, 2.25,
2.25, 2.25, 2.25, 2.25, 2.25, 1.93, 1.93, 1.93, 1.93, 1.93,
1.93, 1.93, 1.98, 1.98, 1.98, 1.98, 1.98, 1.98, 1.98, 1.98,
1.3, 1.3, 1.3, 1.3, 1.3, 1.3, 1.44, 1.44, 1.44, 1.44, 1.44,
1.44, 1.44, 1.44, 0.75, 0.75, 0.75, 0.75, 0.75, 0.75, 1.02,
1.02, 1.02, 1.02, 1.02, 1.02, 1.02, 1.02, 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, 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, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, 0.31, 0.31, 0.31, 0.31,
0.31, 0.31, 0.31, 0.31, 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.34, 0.34, 0.34, 0.34, 0.34, 0.34, 0.34, 0.34, 0.3,
0.3, 0.3, 0.3, 0.3, 0.3, 0.3, 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.76, 0.76, 0.76, 0.76, 0.76, 0.76, 0.76,
1.88, 1.88, 1.88, 1.88, 1.88, 1.88, 1.88, 1.88, NA, NA, NA,
NA, NA, NA, 0.49, 0.49, 0.49, 0.49, 0.49, 0.49, 0.49, 4.57,
4.57, 4.57, 4.57, 4.57, 4.57, 4.57, 3.93, 3.93, 3.93, 3.93,
3.93, 3.93, 3.93, 7.19, 7.19, 7.19, 7.19, 7.19, 7.19, 7.19,
7.55, 7.55, 7.55, 7.55, 7.55, 7.55, 7.55, 5.37, 5.37, 5.37,
5.37, 5.37, 5.37, 5.37, 4.64, 4.64, 4.64, 4.64, 4.64, 4.64,
4.64, 9.34, 9.34, 9.34, 9.34, 9.34, 9.34, 9.34, 9.34, 4.98,
4.98, 4.98, 4.98, 4.98, 4.98, 4.11, 4.11, 4.11, 4.11, 4.11,
4.11, 4.11, 5.7, 5.7, 5.7, 5.7, 5.7, 5.7, 5.7, 2.1, 2.1,
2.1, 2.1, 2.1, 2.1, 2.1, 2.1, 3.31, 3.31, 3.31, 3.31, 3.31,
3.31, 3.11, 3.11, 3.11, 3.11, 3.11, 3.11, 3.11, 3.05, 3.05,
3.05, 3.05, 3.05, 3.05, 3.05, 2.24, 2.24, 2.24, 2.24, 2.24,
2.24, 2.24, 2.24, 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, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
2.47, 2.47, 2.47, 2.47, 2.47, 2.47, 2.47, 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, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, 1.27,
1.27, 1.27, 1.27, 1.27, 1.27, 1.27, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, 2.72, 2.72, 2.72, 2.72, 2.72,
2.72, 2.72, 2.72, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, 0.61, 0.61, 0.61, 0.61, 0.61, 0.61, 0.61, 0.61,
NA, NA, NA, NA, NA, NA, 2.26, 2.26, 2.26, 2.26, 2.26, 2.26,
2.26, 1.11, 1.11, 1.11, 1.11, 1.11, 1.11, 1.11, 1.11, 1.11,
1.11, 1.11, 1.11, 1.11, 1.11, 1.11, 1.11, 1.11, 1.11, 1.11,
1.11, 1.11, 1.11, 1.11, 1.11, 1.11, 1.11, 1.11, 1.11, 1.63,
1.63, 1.63, 1.63, 1.63, 1.63, 1.63, 1.27, 1.27, 1.27, 1.27,
1.27, 1.27, 1.27, 1.48, 1.48, 1.48, 1.48, 1.48), V = c(0.847,
0.847, 0.847, 0.847, 0.83, 0.83, 0.83, 0.83, 0.83, 0.83,
0.83, 1.178, 1.178, 1.178, 1.178, 1.178, 1.178, 1.178, 1.178,
1.6, 1.6, 1.6, 1.6, 1.6, 1.6, 1.351, 1.351, 1.351, 1.351,
1.351, 1.351, 1.351, 0.92, 0.92, 0.92, 0.92, 0.92, 0.92,
0.92, 0.633, 0.633, 0.633, 0.633, 0.633, 0.633, 0.633, 0.755,
0.755, 0.755, 0.755, 0.755, 0.755, 0.755, 0.268, 0.268, 0.268,
0.268, 0.268, 0.268, 0.268, 0.116, 0.116, 0.116, 0.116, 0.116,
0.116, 0.116, 0.145, 0.145, 0.145, 0.145, 0.145, 0.145, 0.145,
0.138, 0.138, 0.138, 0.138, 0.138, 0.138, 0.138, 0.392, 0.392,
0.392, 0.392, 0.392, 0.392, 0.392, 0.438, 0.438, 0.438, 0.438,
0.438, 0.438, 0.438, 0.34, 0.34, 0.34, 0.34, 0.34, 0.34,
0.34, 0.517, 0.517, 0.517, 0.517, 0.517, 0.517, 0.517, 0.517,
0.269, 0.269, 0.269, 0.269, 0.269, 0.269, 0.673, 0.673, 0.673,
0.673, 0.673, 0.673, 0.673, 0.673, 0.161, 0.161, 0.161, 0.161,
0.161, 0.161, 0.535, 0.535, 0.535, 0.535, 0.535, 0.535, 0.535,
0.448, 0.448, 0.448, 0.448, 0.448, 0.448, 0.448, 0.091, 0.091,
0.091, 0.091, 0.091, 0.091, 0.091, 0.091, 0.121, 0.121, 0.121,
0.121, 0.121, 0.121, 0.035, 0.035, 0.035, 0.035, 0.035, 0.035,
0.035, 0.045, 0.045, 0.045, 0.045, 0.045, 0.045, 0.045, 0.108,
0.108, 0.108, 0.108, 0.108, 0.108, 0.108, 0.278, 0.278, 0.278,
0.278, 0.278, 0.278, 0.278, 0.162, 0.162, 0.162, 0.162, 0.162,
0.162, 0.162, 0.162, 0.162, NA, NA, NA, NA, NA, 0.064, 0.064,
0.064, 0.064, 0.064, 0.064, 0.064, 0.064, NA, NA, NA, NA,
NA, NA, 0.062, 0.062, 0.062, 0.062, 0.062, 0.062, 0.062,
0.095, 0.095, 0.095, 0.095, 0.095, 0.095, 0.095, 0.031, 0.031,
0.031, 0.031, 0.031, 0.031, 0.031, 0.343, 0.343, 0.343, 0.343,
0.343, 0.343, 0.343, 0.767, 0.767, 0.767, 0.767, 0.767, 0.767,
0.767, 0.442, 0.442, 0.442, 0.442, 0.442, 0.442, 0.442, 1.085,
1.085, 1.085, 1.085, 1.085, 1.085, 1.085, 0.711, 0.711, 0.711,
0.711, 0.711, 0.711, 0.711, 1.036, 1.036, 1.036, 1.036, 1.036,
1.036, 1.036, 0.624, 0.624, 0.624, 0.624, 0.624, 0.624, 0.624,
0.624, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
0.132, 0.132, 0.132, 0.132, 0.132, 0.132, 0.132, 0.032, 0.032,
0.032, 0.032, 0.032, 0.032, 0.032, 0.032, 0.134, 0.134, 0.134,
0.134, 0.134, 0.134, 0.065, 0.065, 0.065, 0.065, 0.065, 0.065,
0.065, 0.201, 0.201, 0.201, 0.201, 0.201, 0.201, 0.201, 0.109,
0.109, 0.109, 0.109, 0.109, 0.109, 0.109, 1.189, 1.189, 1.189,
1.189, 1.189, 1.189, 1.189, 0.479, 0.479, 0.479, 0.479, 0.479,
0.479, 0.479, 0.565, 0.565, 0.565, 0.565, 0.565, 0.565, 0.565,
0.243, 0.243, 0.243, 0.243, 0.243, 0.243, 0.243, 0.142, 0.142,
0.142, 0.142, 0.142, 0.142, 0.142, 2.73, 2.73, 2.73, 2.73,
2.73, 2.73, 2.73, 1.848, 1.848, 1.848, 1.848, 1.848, 1.848,
1.848, 2.126, 2.126, 2.126, 2.126, 2.126, 2.126, 2.126, 2.59,
2.59, 2.59, 2.59, 2.59, 2.59, 2.59, 2.077, 2.077, 2.077,
2.077, 2.077, 2.077, 2.077, 0.912, 0.912, 0.912, 0.912, 0.912,
0.912, 0.912, 1.944, 1.944, 1.944, 1.944, 1.944, 1.944, 1.944,
1.944, 1.38, 1.38, 1.38, 1.38, 1.38, 1.38, 1.384, 1.384,
1.384, 1.384, 1.384, 1.384, 1.384, 0.807, 0.807, 0.807, 0.807,
0.807, 0.807, 0.807, 0.573, 0.573, 0.573, 0.573, 0.573, 0.573,
0.573, 0.573, 0.81, 0.81, 0.81, 0.81, 0.81, 0.81, 0.598,
0.598, 0.598, 0.598, 0.598, 0.598, 0.598, 0.535, 0.535, 0.535,
0.535, 0.535, 0.535, 0.535, 0.4, 0.4, 0.4, 0.4, 0.4, 0.4,
0.4, 0.063, 0.063, 0.063, 0.063, 0.063, 0.063, 0.063, 0.063,
0.063, NA, NA, NA, NA, NA, NA, NA, 0.139, 0.139, 0.139, 0.139,
0.139, 0.139, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, 0.015, 0.015, 0.015, 0.015, 0.015, 0.015, 0.015,
0.024, 0.024, 0.024, 0.024, 0.024, 0.024, 0.024, 0.081, 0.081,
0.081, 0.081, 0.081, 0.081, 0.081, 0.08, 0.08, 0.08, 0.08,
0.08, 0.08, 0.08, 0.051, 0.051, 0.051, 0.051, 0.051, 0.051,
0.051, 0.051, 0.428, 0.428, 0.428, 0.428, 0.428, 0.428, 0.125,
0.125, 0.125, 0.125, 0.125, 0.125, 0.125, 0.044, 0.044, 0.044,
0.044, 0.044, 0.044, 0.044, 0.057, 0.057, 0.057, 0.057, 0.057,
0.057, 0.057, 0.057, 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.548, 0.548, 0.548, 0.548, 0.548, 0.548, 0.048,
0.048, 0.048, 0.048, 0.048, 0.048, 0.048, 0.019, 0.019, 0.019,
0.019, 0.019, 0.019, 0.019, 0.04, 0.04, 0.04, 0.04, 0.04,
0.04, 0.04, 0.06, 0.06, 0.06, 0.06, 0.06, 0.06, 0.06, 0.051,
0.051, 0.051, 0.051, 0.051, 0.051, 0.051, 0.105, 0.105, 0.105,
0.105, 0.105, 0.105, 0.105, 0.105, NA, NA, NA, NA, NA, NA,
0.261, 0.261, 0.261, 0.261, 0.261, 0.261, 0.261, 0.176, 0.176,
0.176, 0.176, 0.176, 0.176, 0.176, 0.176, 0.176, 0.176, 0.176,
0.176, 0.176, 0.176, 0.176, 0.176, 0.176, 0.176, 0.176, 0.176,
0.176, 0.176, 0.176, 0.176, 0.176, 0.176, 0.176, 0.176, 0.327,
0.327, 0.327, 0.327, 0.327, 0.327, 0.327, 0.254, 0.254, 0.254,
0.254, 0.254, 0.254, 0.254, 0.258, 0.258, 0.258, 0.258, 0.258
), Zn = c(6.19, 6.19, 6.19, 6.19, 8.7, 8.7, 8.7, 8.7, 8.7,
8.7, 8.7, 8.9, 8.9, 8.9, 8.9, 8.9, 8.9, 8.9, 8.9, 9.91, 9.91,
9.91, 9.91, 9.91, 9.91, 7.8, 7.8, 7.8, 7.8, 7.8, 7.8, 7.8,
11.89, 11.89, 11.89, 11.89, 11.89, 11.89, 11.89, 6.86, 6.86,
6.86, 6.86, 6.86, 6.86, 6.86, 7.6, 7.6, 7.6, 7.6, 7.6, 7.6,
7.6, 2.5, 2.5, 2.5, 2.5, 2.5, 2.5, 2.5, 2.18, 2.18, 2.18,
2.18, 2.18, 2.18, 2.18, 2.18, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, 3.09, 3.09, 3.09, 3.09, 3.09, 3.09,
3.09, 4.43, 4.43, 4.43, 4.43, 4.43, 4.43, 4.43, 2.28, 2.28,
2.28, 2.28, 2.28, 2.28, 2.28, 3.25, 3.25, 3.25, 3.25, 3.25,
3.25, 3.25, 3.25, 3.25, NA, NA, NA, NA, NA, 3.71, 3.71, 3.71,
3.71, 3.71, 3.71, 3.71, 3.71, 0.89, 0.89, 0.89, 0.89, 0.89,
0.89, 1.49, 1.49, 1.49, 1.49, 1.49, 1.49, 1.49, 1.11, 1.11,
1.11, 1.11, 1.11, 1.11, 1.11, 1.11, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, 0.87, 0.87, 0.87, 0.87, 0.87,
0.87, 0.87, 0.79, 0.79, 0.79, 0.79, 0.79, 0.79, 0.79, 0.79,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, 1.53,
1.53, 1.53, 1.53, 1.53, 1.53, 1.53, 1.53, 0.8, 0.8, 0.8,
0.8, 0.8, 0.8, 1.65, 1.65, 1.65, 1.65, 1.65, 1.65, 1.65,
1.65, NA, NA, NA, NA, NA, NA, 0.88, 0.88, 0.88, 0.88, 0.88,
0.88, 0.88, 1.33, 1.33, 1.33, 1.33, 1.33, 1.33, 1.33, 1.49,
1.49, 1.49, 1.49, 1.49, 1.49, 1.49, 1.8, 1.8, 1.8, 1.8, 1.8,
1.8, 1.8, 2.86, 2.86, 2.86, 2.86, 2.86, 2.86, 2.86, 0.97,
0.97, 0.97, 0.97, 0.97, 0.97, 0.97, 2.2, 2.2, 2.2, 2.2, 2.2,
2.2, 2.2, 1.09, 1.09, 1.09, 1.09, 1.09, 1.09, 1.09, 3.06,
3.06, 3.06, 3.06, 3.06, 3.06, 3.06, 1.86, 1.86, 1.86, 1.86,
1.86, 1.86, 1.86, 2.41, 2.41, 2.41, 2.41, 2.41, 2.41, 2.41,
1.47, 1.47, 1.47, 1.47, 1.47, 1.47, 1.47, 2.88, 2.88, 2.88,
2.88, 2.88, 2.88, 2.88, 2.35, 2.35, 2.35, 2.35, 2.35, 2.35,
2.35, 2.35, 1.41, 1.41, 1.41, 1.41, 1.41, 1.41, 2.02, 2.02,
2.02, 2.02, 2.02, 2.02, 2.02, 3.31, 3.31, 3.31, 3.31, 3.31,
3.31, 3.31, 1.3, 1.3, 1.3, 1.3, 1.3, 1.3, 1.3, 7, 7, 7, 7,
7, 7, 7, 3.6, 3.6, 3.6, 3.6, 3.6, 3.6, 3.6, 9.07, 9.07, 9.07,
9.07, 9.07, 9.07, 9.07, 3.28, 3.28, 3.28, 3.28, 3.28, 3.28,
3.28, 1.55, 1.55, 1.55, 1.55, 1.55, 1.55, 1.55, 9.58, 9.58,
9.58, 9.58, 9.58, 9.58, 9.58, 7.54, 7.54, 7.54, 7.54, 7.54,
7.54, 7.54, 13.86, 13.86, 13.86, 13.86, 13.86, 13.86, 13.86,
14.27, 14.27, 14.27, 14.27, 14.27, 14.27, 14.27, 9.59, 9.59,
9.59, 9.59, 9.59, 9.59, 9.59, 7.08, 7.08, 7.08, 7.08, 7.08,
7.08, 7.08, 18.08, 18.08, 18.08, 18.08, 18.08, 18.08, 18.08,
18.08, 10.95, 10.95, 10.95, 10.95, 10.95, 10.95, 7.36, 7.36,
7.36, 7.36, 7.36, 7.36, 7.36, 6.18, 6.18, 6.18, 6.18, 6.18,
6.18, 6.18, 5.25, 5.25, 5.25, 5.25, 5.25, 5.25, 5.25, 5.25,
5.4, 5.4, 5.4, 5.4, 5.4, 5.4, 6.39, 6.39, 6.39, 6.39, 6.39,
6.39, 6.39, 4.33, 4.33, 4.33, 4.33, 4.33, 4.33, 4.33, 2.92,
2.92, 2.92, 2.92, 2.92, 2.92, 2.92, 0.89, 0.89, 0.89, 0.89,
0.89, 0.89, 0.89, 0.89, 0.89, NA, NA, NA, NA, NA, NA, NA,
1.06, 1.06, 1.06, 1.06, 1.06, 1.06, 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, 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,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, 5.21, 5.21, 5.21, 5.21, 5.21,
5.21, 5.21, NA, NA, NA, NA, NA, NA, 2.09, 2.09, 2.09, 2.09,
2.09, 2.09, 2.09, 2.03, 2.03, 2.03, 2.03, 2.03, 2.03, 2.03,
2.03, NA, NA, NA, NA, NA, NA, 2.63, 2.63, 2.63, 2.63, 2.63,
2.63, 2.63, 4.31, 4.31, 4.31, 4.31, 4.31, 4.31, 4.31, 1.77,
1.77, 1.77, 1.77, 1.77, 1.77, 1.77, 4.15, 4.15, 4.15, 4.15,
4.15, 4.15, 4.15, 2.22, 2.22, 2.22, 2.22, 2.22, 2.22, 2.22,
2.22, 2.22, 2.22, 2.22, 2.22, 2.22, 2.22, 2.22, 2.22, 2.22,
2.22, 2.22, 2.22, 2.22, 2.22, 2.22, 2.22, 2.22, 2.22, 2.22,
2.22, 5.24, 5.24, 5.24, 5.24, 5.24, 5.24, 5.24, 2.7, 2.7,
2.7, 2.7, 2.7, 2.7, 2.7, 7.47, 7.47, 7.47, 7.47, 7.47)), row.names = 167:896, class = "data.frame")
Here is my code:
library (ggplot2)
library (dplyr)
library (tidyr)
shade <-
df1 %>%
transmute(year = year(Date)) %>%
unique() %>%
mutate(
from = as.Date(paste0(year, "-02-21")),
to = as.Date(paste0(year, "-04-30"))
)
ggplot(df1, aes(x=Date)) +
geom_rect(data = shade, aes(xmin = from, xmax = to, ymin = -Inf, ymax = Inf), color='grey', alpha=0.2) +
geom_line( aes(y=V, color='V')) + geom_line( aes(y= Cu / coeff, color = 'Cu')) +
geom_line( aes(y= Pb / coeff, color = 'Pb')) + geom_line( aes(y= / coeff, color = 'Zn')) +
scale_y_continuous(name = "V", sec.axis = sec_axis(~.*coeff, name = "Cu, Pb, Zn"))+
theme_bw()+ theme(legend.position = c(0.2, 0.9),legend.direction="horizontal")+labs(color = NULL, fill = NULL)
If you have any idea what happened and how to fix it, please let me know. Thank you.
Best regards.
Try to use only ggplot(df1) and not putting aes() inside ggplot(), each geom_line read df1 and geom_rect read shade.
ggplot(df1) +
geom_line( aes(x=Date, y=V, color='V')) +
geom_line( aes(x=Date, y= Cu, color = 'Cu')) +
geom_line( aes(x=Date, y= Pb, color = 'Pb')) +
geom_line( aes(x=Date, y= Zn, color = 'Zn')) +
geom_rect(data = shade, aes(xmin = from, xmax = to, ymin = -Inf, ymax = Inf), color='grey', alpha=0.2) +
scale_y_continuous(name = "V", sec.axis = sec_axis(~., name = "Cu, Pb, Zn"))+
theme_bw()+ theme(legend.position = c(0.2, 0.9),legend.direction="horizontal")+labs(color = NULL, fill = NULL)
# or u can use
ggplot() +
geom_line(data = df1, aes(x=Date, y=V, color='V')) +
geom_line(data = df1, aes(x=Date, y= Cu, color = 'Cu')) +
geom_line(data = df1, aes(x=Date, y= Pb, color = 'Pb')) +
geom_line(data = df1, aes(x=Date, y= Zn, color = 'Zn')) +
geom_rect(data = shade, aes(xmin = from, xmax = to, ymin = -Inf, ymax = Inf), color='grey', alpha=0.2) +
scale_y_continuous(name = "V", sec.axis = sec_axis(~., name = "Cu, Pb, Zn"))+
theme_bw()+ theme(legend.position = c(0.2, 0.9),legend.direction="horizontal")+labs(color = NULL, fill = NULL)
In my opinion the error you are getting is beacuse geom_rect() is trying to find columns (Date in this case) in previously declared aes().
I couldn't test my theory since there are some problems with your code (e.g. no coeff in df1 object).
This question already has answers here:
Reshaping data.frame from wide to long format
(8 answers)
Closed 4 years ago.
I want to convert row names to values to a column with keeping the corresponding values. My data has country names in the first column and years for the column names for the remaining of the columns with values in the cells. I want to convert this to a proper table formate. See below for an example.
Example of the table formate:
Country | 2002 | 2003| ...
Canada | 2.2 | 2.4 | ...
US | 4.2 | 7.4 | ...
.
.
.
I would like to have the table in the format of:
Country | Year | Value
Canada | 2002 | 2.2
Canada | 2.2 | 2.4
...
I believe the tidy data package should work by the country is being dropped. See my example below.
Data:
ElectricCarStock_BEVandPHEV<- structure(list(Country = structure(c(1L, 2L, 3L, 4L, 5L, 6L,
7L, 8L, 9L, 10L, 11L, 12L, 13L, 14L, 15L, 17L, 18L, 19L, 20L,
22L, 23L, 16L, 21L), .Label = c("Australia", "Brazil", "Canada",
"Chile", "China", "Finland", "France", "Germany", "India", "Japan",
"Korea", "Mexico", "Netherlands", "New Zealand", "Norway", "Others",
"Portugal", "South Africa", "Sweden", "Thailand", "Total", "United Kingdom",
"United States"), class = "factor"), `2005` = c(NA, NA, NA, NA,
NA, NA, 0.01, 0.02, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
0.22, 1.12, 0.53, 1.89), `2006` = c(NA, NA, NA, NA, NA, NA, 0.01,
0.02, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, 0.01, 0.55, 1.12,
0.53, 2.23), `2007` = c(NA, NA, NA, NA, NA, NA, 0.01, 0.02, NA,
NA, NA, NA, NA, NA, 0.01, NA, NA, NA, 0.01, 1, 1.12, 0.53, 2.69
), `2008` = c(NA, NA, NA, NA, NA, NA, 0.01, 0.09, 0.37, NA, NA,
NA, 0.01, NA, 0.26, NA, NA, NA, 0.01, 1.22, 2.58, 0.61, 5.15),
`2009` = c(NA, NA, NA, NA, 0.48, NA, 0.12, 0.1, 0.53, 1.08,
NA, NA, 0.15, NA, 0.4, NA, NA, NA, 0.01, 1.4, 2.58, 0.64,
7.48), `2010` = c(NA, NA, NA, NA, 1.91, NA, 0.3, 0.25, 0.88,
3.52, 0.06, NA, 0.27, 0.01, 0.79, NA, NA, NA, 0.01, 1.68,
3.77, 0.81, 14.26), `2011` = c(50, NA, 0.52, 0.01, 6.98,
0.06, 3.03, 1.89, 1.33, 16.14, 0.34, NA, 1.14, 0.03, 2.63,
NA, NA, 0.18, 0.01, 2.89, 21.5, 2.6, 61.33), `2012` = c(300,
NA, 2.54, 0.01, 16.88, 0.24, 9.29, 5.26, 2.76, 40.58, 0.85,
0.09, 6.26, 0.06, 7.15, NA, NA, 1.11, 0.02, 5.59, 74.74,
5.31, 179.03), `2013` = c(600, NA, 5.66, 0.02, 32.22, 0.47,
18.91, 12.19, 2.95, 69.46, 1.45, 0.1, 28.67, 0.09, 15.67,
NA, 0.03, 2.66, 0.03, 9.34, 171.44, 9.35, 381.3), `2014` = c(1920,
0.06, 10.73, 0.03, 105.39, 0.93, 31.54, 24.93, 3.35, 101.74,
2.76, 0.15, 43.76, 0.41, 35.44, NA, 0.05, 7.32, 0.1, 24.08,
290.22, 18.73, 703.65), `2015` = c(3690, 0.15, 17.69, 0.07,
312.77, 1.59, 54.49, 48.12, 4.35, 126.4, 5.95, 0.25, 87.53,
0.91, 69.17, NA, 0.29, 15.91, 0.37, 48.51, 404.09, 37.17,
1239.45), `2016` = c(5060, 0.32, 29.27, 0.1, 648.77, 3.29,
84, 72.73, 4.8, 151.25, 11.21, 0.66, 112.01, 2.41, 114.05,
NA, 0.67, 29.33, 0.38, 86.42, 563.71, 61.63, 1982.04), `2017` = c(7340,
0.68, 45.95, 0.25, 1227.77, 6.34, 118.77, 109.56, 6.8, 205.35,
25.92, 0.92, 119.33, 5.88, 176.31, 1.78, 0.86, 49.6, 0.4,
133.67, 762.06, 103.44, 3109.05)), .Names = c("Country",
"2005", "2006", "2007", "2008", "2009", "2010", "2011", "2012",
"2013", "2014", "2015", "2016", "2017"), class = "data.frame", row.names = c(NA,
-23L))
Code:
library(tidyr)
library(dplyr)
temp<-gather(ElectricCarStock_BEVandPHEV, Country, 2:13)
head(temp)
This should do it:
library(reshape2)
library(tidyverse)
ElectricCarStock_BEVandPHEV %>%
melt(id.vars="Country")
Plot
Following is a plot of speeds of two vehicles over time. The subject vehicle (blue) is following the lead vehicle (red) in the same lane. So, the speed profile of subject vehicle is very similar to lead vehicle's.
I have manually labelled the points where a vehicle changes its speed by acceleration/deceleration. Now, I want to determine these points from the data. Following are the sample data:
Data
> dput(veh)
structure(list(Time = c(287, 288, 289, 290, 291, 292, 293, 294,
295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307,
308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320,
321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331), fit_p = c(NA,
NA, NA, 8.86, 8.5, 8.15, 7.79, 7.44, 7.08, 6.73, 6.38, 6.1, 6.48,
6.86, 7.24, 7.63, 8.01, 8.38, 8.58, 8.68, 8.7, 8.53, 8.33, 8.12,
7.92, 7.71, 7.74, 8.1, 8.45, 8.8, 9.15, 9.29, 9.22, 9.16, 9.09,
9.13, 9.25, 9.37, 9.49, 9.51, 9.34, 9.17, NA, NA, NA), psi_p2 = c(NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, 298, NA, NA, NA, NA,
NA, 304, 305, NA, 307, NA, NA, NA, NA, NA, 313, NA, NA, NA, 317,
NA, NA, NA, 321, NA, NA, NA, NA, 326, NA, NA, NA, NA, NA), slo_p = c(-0.35,
-0.35, -0.35, -0.35, -0.35, -0.35, -0.35, -0.35, -0.35, -0.35,
-0.35, 0.38, 0.38, 0.38, 0.38, 0.38, 0.38, 0.2, 0.02, 0.02, -0.2,
-0.2, -0.2, -0.2, -0.2, -0.2, 0.35, 0.35, 0.35, 0.35, -0.06,
-0.06, -0.06, -0.06, 0.12, 0.12, 0.12, 0.12, 0.12, -0.17, -0.17,
-0.17, -0.17, -0.17, -0.17), fit_v = c(NA, NA, NA, 9.16, 8.57,
7.99, 7.4, 7.23, 7.13, 7.04, 6.94, 6.85, 6.75, 6.66, 7.07, 7.57,
8.06, 8.56, 9.04, 9.15, 9.26, 9.37, 9.15, 8.92, 8.68, 8.45, 8.22,
7.99, 8.03, 8.24, 8.55, 8.87, 9.02, 8.96, 8.89, 8.82, 8.75, 8.99,
9.28, 9.47, 9.42, 9.37, NA, NA, NA), psi_v2 = c(NA, NA, NA, NA,
NA, NA, 293, NA, NA, NA, NA, NA, NA, 300, NA, NA, NA, NA, 305,
NA, NA, 308, NA, NA, NA, NA, NA, 314, 315, 316, NA, NA, 319,
NA, NA, NA, 323, NA, NA, 326, NA, NA, NA, NA, NA), slo_v = c(-0.59,
-0.59, -0.59, -0.59, -0.59, -0.59, -0.1, -0.1, -0.1, -0.1, -0.1,
-0.1, -0.1, 0.5, 0.5, 0.5, 0.5, 0.5, 0.11, 0.11, 0.11, -0.23,
-0.23, -0.23, -0.23, -0.23, -0.23, 0.04, 0.16, 0.32, 0.32, 0.32,
-0.07, -0.07, -0.07, -0.07, 0.29, 0.29, 0.29, -0.05, -0.05, -0.05,
-0.05, -0.05, -0.05)), .Names = c("Time", "fit_p", "psi_p2",
"slo_p", "fit_v", "psi_v2", "slo_v"), row.names = c(NA, -45L), class = "data.frame")
In the column psi_v2, I have the time where subject vehicle changed the speed. These are all the S points. The points where the lead vehicle changed the speed are in the column psi_p2. But, I only want to determine the location of those points in psi_p2 which happened immediately before point S. These points are all the L points on the plot. For instance, S1 happened at psi_v2=300, therefore, L1 is 298 in psi_p2.
Question
I guess that I need to use which() to determine the relevant points from psi_p2. But I don't know how to code the part where only the "immediately before" point is picked.
Once the points are identified, I want to check if the subject vehicle accelerated in response to lead vehicle's acceleration. The acceleration of subject vehicle is in slo_v and that of lead vehicle is inslo_p. Example: For S1, slo_v = 0.5, and for L1, slo_p = 0.38. Since subject vehicle accelerated due to acceleration of lead vehicle, we call it "opening" (or "closing" in opposite case).
So, my desired output is:
structure(list(Time = 287:331, fit_p = c(NA, NA, NA, 8.86, 8.5,
8.15, 7.79, 7.44, 7.08, 6.73, 6.38, 6.1, 6.48, 6.86, 7.24, 7.63,
8.01, 8.38, 8.58, 8.68, 8.7, 8.53, 8.33, 8.12, 7.92, 7.71, 7.74,
8.1, 8.45, 8.8, 9.15, 9.29, 9.22, 9.16, 9.09, 9.13, 9.25, 9.37,
9.49, 9.51, 9.34, 9.17, NA, NA, NA), psi_p2 = c(NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, 298L, NA, NA, NA, NA, NA, 304L, 305L,
NA, 307L, NA, NA, NA, NA, NA, 313L, NA, NA, NA, 317L, NA, NA,
NA, 321L, NA, NA, NA, NA, 326L, NA, NA, NA, NA, NA), slo_p = c(-0.35,
-0.35, -0.35, -0.35, -0.35, -0.35, -0.35, -0.35, -0.35, -0.35,
-0.35, 0.38, 0.38, 0.38, 0.38, 0.38, 0.38, 0.2, 0.02, 0.02, -0.2,
-0.2, -0.2, -0.2, -0.2, -0.2, 0.35, 0.35, 0.35, 0.35, -0.06,
-0.06, -0.06, -0.06, 0.12, 0.12, 0.12, 0.12, 0.12, -0.17, -0.17,
-0.17, -0.17, -0.17, -0.17), fit_v = c(NA, NA, NA, 9.16, 8.57,
7.99, 7.4, 7.23, 7.13, 7.04, 6.94, 6.85, 6.75, 6.66, 7.07, 7.57,
8.06, 8.56, 9.04, 9.15, 9.26, 9.37, 9.15, 8.92, 8.68, 8.45, 8.22,
7.99, 8.03, 8.24, 8.55, 8.87, 9.02, 8.96, 8.89, 8.82, 8.75, 8.99,
9.28, 9.47, 9.42, 9.37, NA, NA, NA), psi_v2 = c(NA, NA, NA, NA,
NA, NA, 293L, NA, NA, NA, NA, NA, NA, 300L, NA, NA, NA, NA, 305L,
NA, NA, 308L, NA, NA, NA, NA, NA, 314L, 315L, 316L, NA, NA, 319L,
NA, NA, NA, 323L, NA, NA, 326L, NA, NA, NA, NA, NA), slo_v = c(-0.59,
-0.59, -0.59, -0.59, -0.59, -0.59, -0.1, -0.1, -0.1, -0.1, -0.1,
-0.1, -0.1, 0.5, 0.5, 0.5, 0.5, 0.5, 0.11, 0.11, 0.11, -0.23,
-0.23, -0.23, -0.23, -0.23, -0.23, 0.04, 0.16, 0.32, 0.32, 0.32,
-0.07, -0.07, -0.07, -0.07, 0.29, 0.29, 0.29, -0.05, -0.05, -0.05,
-0.05, -0.05, -0.05), label = structure(c(1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 2L, 1L, 9L, 1L, 1L, 1L, 3L, 10L, 1L,
4L, 11L, 1L, 1L, 1L, 1L, 5L, 1L, 1L, 12L, 6L, 1L, 13L, 1L, 7L,
1L, 14L, 1L, 1L, 8L, 1L, 1L, 1L, 1L, 1L), .Label = c("", "L1",
"L2", "L3", "L4", "L5", "L6", "L7&S7", "S1", "S2", "S3", "S4",
"S5", "S6"), class = "factor"), condition = structure(c(1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 3L, 1L, 1L, 1L, 1L,
3L, 1L, 1L, 2L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 3L, 1L, 1L, 2L, 1L,
1L, 1L, 3L, 1L, 1L, 2L, 1L, 1L, 1L, 1L, 1L), .Label = c("", "closing",
"opening"), class = "factor")), .Names = c("Time", "fit_p", "psi_p2",
"slo_p", "fit_v", "psi_v2", "slo_v", "label", "condition"), class = "data.frame", row.names = c(NA,
-45L))
Kindly guide me what function should I use to identify these points? I prefer using dplyr because I have multiple pairs like this example. An operation for one data frame can then be used on all others using group_by().