R 尝试在包含日期的数据帧上使用melt()时出错
我想将R 尝试在包含日期的数据帧上使用melt()时出错,r,reshape,melt,R,Reshape,Melt,我想将数据框融为一体,以便在一列中有日期,在另一列中有username作为变量,最后是值 我得到了这个错误: as.Date.numeric(值)中出错:必须提供“origin” 虽然我理解这个错误,但我不确定如何避免它 数据的一个小样本是: structure(list(created_at = structure(c(14007, 14008, 14009, 14010, 14011, 14012), class = "Date"), benjamin = c(16, 0, 0, 0,
数据框
融为一体,以便在一列中有日期,在另一列中有username作为变量,最后是值
我得到了这个错误:
as.Date.numeric(值)中出错:必须提供“origin”
虽然我理解这个错误,但我不确定如何避免它
数据的一个小样本是:
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"))
感谢您的帮助。尝试将在处创建的
变量转换为字符向量melt
似乎也不喜欢cast_df
类,但我成功地将该类重置为data.frame
。像这样:
df <- as.data.frame(df)
df$created_at <- as.character(df$created_at)
library(reshape)
melt(df)
df您的错误是由melt
中使用的rbind
引起的,这是要melt的错误数据的结果。我不知道如何创建cast\u df
data.frame
,但它缺少melt.cast\u df
所需的属性(idvars
和rdimnames
)
这就是为什么解决方案有效,melt.data.frame
不需要这个参数。无需将日期
转换为字符
即可:
df <- as.data.frame(df)
melt(df, id="created_at")
df我给wkmor1打勾,因为他先拿到了,并且解决了问题。这表示马瑞克非常感谢你帮助我更好地了解正在发生的事情。