作为一个更大问题的一部分(为多边形ID相同的情况添加一个,makeUniqueIDs参数rbind.SpatialPolygonsDataFrame),我遇到了来自rbind的这个奇怪的消息:
> do.call("rbind",xd.small)
Error in match.names(clabs, names(xi)) :
names do not match previous names
Run Code Online (Sandbox Code Playgroud)
我能找到的唯一其他信息是这个问题,这让我相信这rbind也是问题的根源.
我当然可以编写自己的类似rbind的函数,但可能这种match.names检查是有原因的,我很好奇它是什么.
42-*_*42- 72
第一个数据帧的名称与第二个数据帧的名称不匹配.正如错误消息所说.
> identical(names(xd.small[[1]]), names(xd.small[[2]]) )
[1] FALSE
Run Code Online (Sandbox Code Playgroud)
如果你不关心第二个df的第3或第4列的名称,你可以强制它们是相同的:
> names(xd.small[[1]]) <- names(xd.small[[2]])
> identical(names(xd.small[[1]]), names(xd.small[[2]]) )
[1] TRUE
Run Code Online (Sandbox Code Playgroud)
然后事情应该愉快地进行.
Dr *_*rer 42
很容易使用该unname()功能:
data.frame <- unname(data.frame)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
147562 次 |
| 最近记录: |