我有多个数据框,但它们都有相同的列标题我想要做的就是一个接一个地追加它们以制作一个大的数据帧。什么是最好的方法。
我使用了以下内容:但不确定这是正确的方法:
append(x, y)
我也尝试了rbind,但最终出现了我预期的错误,因为这些数据框的大小不同:
Error in names(value[[jj]])[ri] <- nm :
'names' attribute [2066] must be the same length as the vector [9]
In addition: Warning message:
In names(value[[jj]])[ri] <- nm :
number of items to replace is not a multiple of replacement length
以下是一个例子:
> x
user_id rev_page rev_id rev_parent_id page_ns rev_length delta deleted rev_curr_minor timestamp edit_count lang_level
1 705834 1048946 32026867 30924739 0 2959 82 0 0 2005-12-19 23:21:24 0 N
2 705834 1048946 32028621 32026867 0 3085 126 0 0 2005-12-19 23:36:33 1 N
3 705834 21402 32032828 32027632 0 14395 470 0 0 2005-12-20 00:10:06 2 N
4 705834 21402 32033273 32032828 0 14400 5 0 0 2005-12-20 00:13:50 3 N
5 705834 321528 32065506 29330826 0 3440 201 0 0 2005-12-20 05:13:45 4 N
6 705834 321528 32066086 32065506 0 3525 85 0 0 2005-12-20 05:21:25 5 N
> y
user_id rev_page rev_id rev_parent_id page_ns rev_length delta deleted rev_curr_minor timestamp edit_count lang_level
1 892755 2585151 38515111 24830760 0 2018 1213 0 0 2006-02-06 21:32:26 0 1
2 892755 3807359 63798071 63471532 1 14047 5293 0 0 2006-07-14 15:46:56 1 1
3 892755 3807359 63798564 63798071 1 14146 99 0 0 2006-07-14 15:49:52 2 1
4 892755 2976438 63825832 44108751 0 9609 -60 0 0 2006-07-14 18:38:41 3 1
5 892755 3807359 63891769 63855569 1 15579 1005 0 0 2006-07-15 02:28:59 4 1
6 892755 3807359 67487579 63891769 1 15745 166 0 0 2006-08-03 18:52:01 5 1
> class(x)
[1] "data.frame"
> z <- rbind(x,y)
Error in names(value[[jj]])[ri] <- nm :
'names' attribute [12] must be the same length as the vector [9]
In addition: Warning messages:
1: In names(value[[jj]])[ri] <- nm :
number of items to replace is not a multiple of replacement length
2: In names(value[[jj]])[ri] <- nm :
number of items to replace is not a multiple of replacement length
> rbind(x,y)
答案 0 :(得分:1)
如果列的顺序相同(在@ MatthewPlourde的评论之后),只需rbind(df1,df2,df3,...)
。