【发布时间】:2018-10-31 14:54:29
【问题描述】:
我有两组数据,7 个变量的 2 个 obs。
我正在尝试生成一组数据(数据框),它是我目前拥有的两组的组合。
例如,目标是拥有一组数据,即 4 个 obs 的 7 个变量。只需将第二个数据集的行添加到下面的其他行。基本上只是试图创建一个更大的表,其中包含更多由我拥有的行组成的行。
我尝试过的事情包括安装 dplyr:
rbind(df1,df2)
rbind(df1,df2, .is=NULL)
我有一个错误:
Error in match.names(clabs, names(xi)) :
names do not match previous name
我相信这是由于从 csv 文件生成我的数据,该文件包含我的第一个数据集的标题作为列标题,而第二个数据集具有不同的标题,因为它是从文件的更下方读取的,因此标题是 x1,x1.1 等...
所以我尝试了 unnamed() 也失败了。
然后我尝试了
bind_rows(df1,df2)
但它给了我一个 4x14 的数据集。 我也在其他地方遇到了错误
错误:与STRSXP不兼容
我认为问题在于我的数据框可能存储为列表,以及一些列作为字符和一些列作为数字的数据。
【问题讨论】:
-
只需在使用
rbind或bind_rows之前执行names(df2) <- names(df1)。这假定两个数据框中的列顺序相同。