Estoy recibiendo un error al intentar utilizar la masa fundida () en una trama de datos que contiene fechas
Pregunta
Me gustaría para fundir la dataframe
de modo que en una columna tengo fechas y en un segundo tengo nombre de usuario como la variable y, finalmente, el valor.
Estoy recibiendo este error:
Error en as.Date.numeric (valor): 'origen' debe suministrarse
y si bien entiendo el error no estoy exactamente seguro de cómo llegar a su alrededor.
Una pequeña muestra de los datos es:
structure(list(created_at = structure(c(14007, 14008, 14009,
14010, 14011, 14012), class = "Date"), benjamin = c(16, 0, 0,
0, 0, 0), byron = c(0, 0, 0, 0, 0, 0), cameronc = c(0, 0, 0,
0, 0, 0), daniel = c(0, 0, 0, 0, 0, 0), djdiaz = c(0, 0, 0, 0,
0, 0), gene = c(16, 77, 64, 38, 72, 36), joel = c(0, 0, 0, 0,
0, 2), kerem = c(0, 0, 0, 0, 0, 0), sophia = c(0, 0, 0, 0, 0,
0), SuperMoonMan = c(0, 0, 0, 0, 0, 0)), .Names = c("created_at",
"benjamin", "byron", "cameronc", "daniel", "djdiaz", "gene",
"joel", "kerem", "sophia", "SuperMoonMan"), row.names = c(NA,
6L), class = c("cast_df", "data.frame"))
Gracias por su ayuda.
Solución
Trate de convertir la variable created_at
en un vector de caracteres. melt
también no parece como la clase cast_df
, pero no tenía éxito restableciendo la clase a solo data.frame
. De esta manera:
df <- as.data.frame(df)
df$created_at <- as.character(df$created_at)
library(reshape)
melt(df)
Otros consejos
es causada por rbind
utilizado en melt
, que es consecuencia de los datos erróneos se derrita. No sé cómo crear su cast_df
data.frame
, pero faltan atributos (idvars
y rdimnames
) que son requeridos por melt.cast_df
.
Esa es la razón por wkmor1 funciona la solución, melt.data.frame
no necesitan esta argumentos. Y sin necesidad de convertir a Date
character
que se puede hacer como:
df <- as.data.frame(df)
melt(df, id="created_at")