我是 R 的新手,我的数据框在第一列中有多个重复项,但是第二列具有唯一值。
我想在第一列中保留唯一值,并为每个唯一值设置一个不同的列。
我当前的数据框看起来像这样:
Item Value
Apricot 4
Apricot 2
Apricot 5
Banana 4
Carrot 7
Carrot 5
Run Code Online (Sandbox Code Playgroud)
我希望它看起来像这样:
Item Value 1 Value 2 Value 3
Apricot 4 2 5
Banana 4
Carrot 7 5
Run Code Online (Sandbox Code Playgroud)
提前致谢。佛吉特
这可以很容易地完成data.table(如果您使用的是develie 版本1.9.7,请在此处查看安装详细信息)。方便的函数rowid可以获取基于变量的序列。在dcast公式中使用它,我们得到“宽”输出。
library(data.table)
dcast(setDT(df1), Item~rowid(Item, prefix="Value"), value.var="Value")
# Item Value1 Value2 Value3
#1: Apricot 4 2 5
#2: Banana 4 NA NA
#3: Carrot 7 5 NA
Run Code Online (Sandbox Code Playgroud)