【发布时间】:2017-03-02 08:38:08
【问题描述】:
我有以下结构的数据框列表:
cust_num V2 V3 ...
每个数据框代表一组客户,其中cust_num 可以在单个数据框中出现多次。
我想提取每个数据框的unique 客户,并将它们插入到一个新的数据框,其中包含他们来自的数据框(即组)的index。
这是一个例子:
# df1
cust_num V2 V3 ...
1
1
2
# df2
cust_num V2 V3 ...
4
4
5
我希望我的结果是:
cust_num group
1 1
2 1
4 2
5 2
我尝试使用for 循环,但在将数据插入新数据框并创建组index 时遇到了麻烦:
for (i in 1:length(df_list)) {
x <- unique(df_list[[i]][1])
new_df <- rbind(x)
}
提前谢谢你
【问题讨论】:
-
如果
dat是您的数据框列表:do.call(rbind,lapply(seq_along(dat), function(x) data.frame(cust_num=unique(dat[[x]][,1]),group=x))) -
@count 您应该将其添加为答案