如何在R中将文本分析数据帧从宽格式转换为长格式?

如何在R中将文本分析数据帧从宽格式转换为长格式?,r,dataframe,reshape,R,Dataframe,Reshape,我试图使用R中的tm和snowballC软件包分析一些评论。我的输出格式如下: structure(list(Emp.or.man.or.big.idea = c(1, 2, 1, 2, 3), Sentiment = c(0, -1, 1, 0, -1), x1st = c(0, 0, 1, 0, 0), x2nd = c(0, 0, 1, 0, 0), accept = c(0, 0, 0, 1, 0)), .Names = c("Emp.or.man.or.big.idea", "

我试图使用R中的tm和snowballC软件包分析一些评论。我的输出格式如下:

 structure(list(Emp.or.man.or.big.idea = c(1, 2, 1, 2, 3), Sentiment = c(0, 
-1, 1, 0, -1), x1st = c(0, 0, 1, 0, 0), x2nd = c(0, 0, 1, 0, 
0), accept = c(0, 0, 0, 1, 0)), .Names = c("Emp.or.man.or.big.idea", 
"Sentiment", "x1st", "x2nd", "accept"), row.names = c(NA, -5L
), class = "data.frame")
我的第一个专栏是评论是由经理、员工还是一个大主意。我的第二个专栏是情绪是积极的、消极的还是中性的。我的第三栏及以后的内容是针对特定员工/经理/大创意和特定情绪的特定词语和提及次数0/1/-1

我试图理解如何将列名转换为行名。我面临两个问题,当我试图使用重塑包,但我不能拉,如果关闭。我有237个观察值和464个变量,因此我不确定如何从第3列开始转换数据,以便为每个独特的经理/员工/大创意和每个独特的情绪(1/0-1)的每个变量提供一个唯一的行。从3到464的所有其他变量都相同。在这种情况下,简单的转置无法做到这一点

预期结果如下所示:

structure(list(Emp.or.man.or.big.idea = c(1, 1, 1, 2, 2, 2, 3, 
3, 3), Sentiment = c(0, -1, 1, 0, -1, 1, 0, -1, 1), words = structure(c(2L, 
2L, 2L, 3L, 3L, 3L, 1L, 1L, 1L), .Label = c("accept", "x1st", 
"x2nd"), class = "factor"), num.mentions = c(2, 1, 3, 4, 2, 3, 
2, 5, 4)), .Names = c("Emp.or.man.or.big.idea", "Sentiment", "words", 
"num.mentions"), row.names = c(NA, -9L), class = "data.frame")

请不要发布数据的图片。改用
dput
。也请包括预期结果。关于如何传达信息或想法。@Sotos-谢谢,现在更新了。考虑到您的输入,您的输出对我来说没有多大意义。
num.references
来自哪里?
melt(dt,id.vars=c(“Emp.or.man.or.big.idea”、“情绪”))
你想要什么?@Chris,谢谢你的帮助。
num.atterences
是变量的一个示例计数
x1st
x2nd
accept
,虽然您是对的,但它比帮助人们理解我的问题更为冗余和混乱。基本上,melt的问题是,在我的例子中,我需要将变量转换为行,并且只有当它们=1时才能对它们进行计数。i、 e.如果他们=0,这意味着没有提到这个词是为了
emp.或.man.或.big.idea
情绪
的特定组合,所以我不需要它们作为行。