1
我有一个看起来像这样的程序的输出。R:如何附加数据帧的不同头部和/或数据帧的溢出部分
Keg X A D E F
123F 0 1 0 0 0
134E 0 0 0 0 1
234B 0 0 0 0 0
Keg G
123F 0
134E 0
234B 1
Keg X C D E F
ABCD 0 1 0 0 0
13CD 0 0 0 0 1
234F 0 0 0 1 0
DCEF 0 0 1 0 0
我试图安排这样
Keg A C D E F G
123F 1 0 0 0 0 0
134E 0 0 0 0 1 0
234B 0 0 0 0 0 1
ABCD 0 1 0 0 0 0
13CD 0 0 0 0 1 0
234F 0 0 0 1 0 0
DCEF 0 0 1 0 0 0
此段文字假设两个连续keg`s之间的文本作为一个块。
在这个例子中,前两个块具有相同的桶值。实际上,文本溢出,导致第二个块具有相同的桶值。每个新的块(不是溢出块)都有一个列X.
列X需要在输出结果证明的最后去掉。列数是有限的,可以假定为(A,C,D,E,F,G)。
输出中可以有任意数量的块。任何溢出的块将在其家族之下。数据块总是有列名称,这些名称是有限名称集的一部分。列名不重复。
我们也可以有不同的列名顺序的数据块。
我知道我可以使用bind_row()函数合并两个不同列名的块,我知道我可以使用inner_join(),溢出的块。我无法巧妙地整合这两个概念。我为这样的文本编写了R代码,没有溢出部分。
希望有人能告诉我如何做到这一点。我是R新手,正在为此而苦苦挣扎。
我不能给予好评的答案,由于名声小于15 – Acinonyx
有一个Q代表你的
sum
。上面的解决方案假设nm1矢量中的所有列名正在数据中使用。但是,如果该向量包含的名称多于使用的名称,则代码将引发错误。例如,如果我将“H”添加到nm1向量。这会导致错误:错误:字符串必须匹配列名称。未知列:H.是否有解决方案。 TIA – Acinonyx@akrun上面的Q – Acinonyx