根据列顺序重新调整R中的数据

根据列顺序重新调整R中的数据,r,reshape,R,Reshape,我希望使用整形功能将R数据帧从宽格式转换为长格式。我有一个很长的122列列表,这些列将作为variable=术语包含在内。我正在寻找一种方法,根据这些列在数据框中的顺序列出它们,而不是逐个命名 一个精简版的重塑调用,只有3列表示All,如下所示。我的实际版本对于variable=有一个长得多的向量,我想简化它 AllReshape <- reshape( All, varying = c("TotalSedges", "TotalGra

我希望使用整形功能将R数据帧从宽格式转换为长格式。我有一个很长的122列列表,这些列将作为
variable=
术语包含在内。我正在寻找一种方法,根据这些列在数据框中的顺序列出它们,而不是逐个命名

一个精简版的重塑调用,只有3列表示
All
,如下所示。我的实际版本对于
variable=
有一个长得多的向量,我想简化它

AllReshape <- reshape(
             All, 
             varying = c("TotalSedges", "TotalGrasses",  "TotalRushes", etc...),
             v.names = "Percent",
             timevar = "ForageName",
             times = c("TotalSedges", "TotalGrasses",  "TotalRushes", etc...)
             direction = "long")

所有重塑你看过重塑2中的melt()了吗?像新的东西你试过了吗?在
帮助(重塑)
的示例中,他们甚至有一个示例显示您可以使用数字位置来代替。您能否提供一个可复制的小示例?你更有可能通过这种方式获得帮助。为什么不
variang=names(ALL)[5:126],
?(虽然,和阿南达一样,我的印象是只要``variang=5:126`就行了。)根据我对重塑函数的经验,我猜你的错误在别处,但正如已经指出的,你没有给出示例,也没有办法测试你的代码。感谢大家的快速响应。我想我需要更彻底地阅读帮助。以下是我的解决方案:
allrestrape