在Julia DataFrame';中,将度量变量置于id变量之前的原因是什么;s堆栈函数?
当在Julia DataFrame';中,将度量变量置于id变量之前的原因是什么;s堆栈函数?,dataframe,julia,Dataframe,Julia,当stack-ing数据帧时,即将其从宽格式转换为长格式,通常指定id\u vars-需要重复的列(索引),所有其他列(measure\u vars,例如,观测值)堆叠在一个长列中 但在Julia DataFrames中,这些参数没有指定为命名关键字,并且在函数调用中,measure\u vars位于id\u vars之前 为什么会有这样的争论?在没有测量变量的情况下,如何指定id变量 为什么会有这样的争论 有以下考虑: 您必须有measure\u vars才能执行堆叠,而可以在没有id\u v
stack
-ing数据帧时,即将其从宽格式转换为长格式,通常指定id\u vars
-需要重复的列(索引),所有其他列(measure\u vars
,例如,观测值)堆叠在一个长列中
但在Julia DataFrames中,这些参数没有指定为命名关键字,并且在函数调用中,measure\u vars
位于id\u vars
之前
为什么会有这样的争论?在没有测量变量的情况下,如何指定id变量
为什么会有这样的争论
有以下考虑:
measure\u vars
才能执行堆叠,而可以在没有id\u vars
的情况下执行stack
(默认情况下,如果省略id\u vars
,则这些列将被视为measure\u vars
以外的所有列);从技术上讲,您可以使用堆栈而不使用度量值
(请参阅下面的评论-但我认为这不是很有用)
堆栈(df,[],id_vars)
,但这并不是非常有用的东西
另一方面,如果您希望将
measure\u vars
指定为所有列,但希望成为id\u vars
的某些列除外,则写入:stack(df,而不是(id\u vars))
我不知怎么地希望只指定id\u vars
,并将其余列指定为measure\u vars
。无论如何,感谢您提供的Not(id\u vars)
提示。我相信我已经在示例或帮助中看到了它!这是在过去的melt
中,但我们决定只保留一个函数,因为每个人都一直忘记stack
vsmelt
的参数顺序。我们删除了它,因为我们认为在实践中使用而不是应该足够容易。