在进行一些处理时,出现这样的错误提示:
原因在于,对data.frame类型进行rbind()操作时,存在不对应的列,而rbind()是对data.frame的列名进行匹配后进行行扩增的;
比如,如下定义了两个data.frame,dt1,dt2,存在不相对的列名,则会报错:
此时,如果将dt2的colnames中的F5改为F1,即与dt1列名一样但是列顺序不同,再进行rbind()操作:
可以发现,data.frame的rbind操作是根据colnames进行匹配,从而进行行扩增操作,列顺序以第一个data.frame为准;
如果将dt1,dt2的类型转为matrix再进行rbind()操作,则不存在这样的问题,会根据列对应位置进行行扩增,不受列名影响: