微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

R 错误:未实现这些类型的比较尝试根据匹配的列过滤行时发生

如何解决R 错误:未实现这些类型的比较尝试根据匹配的列过滤行时发生

我觉得我可能缺少一个包裹。这段代码在我的旧笔记本电脑上运行良好,但当我将所有内容转移到台式电脑时,它无法配合。

我合并了来自两个来源的数据,每个来源都有一列包含美国各州的 2 位数标识符:

distarea <- merge(x=femadata2,y=censdata2,by = ("CTYNAME"),all=FALSE)

我只想查看这些列中的每一列中的状态匹配的行:

distarea2 <- distarea[distarea$FEMAState==distarea$STNAME,]

运行此行后,我收到此错误

distarea$FEMAState == distarea$STNAME 中的错误: 未实现这些类型的比较 另外: 警告信息: 在 [.data.frame(distarea,distarea$FEMAState == distarea$STNAME,: “==”的不兼容方法(“Ops.factor”、“Ops.data.table”)

先谢谢你!

解决方法

那些是 factor 列。我们可以转换为 character

  distarea[as.character(distarea$FEMAState)== as.character(distarea$STNAME),]

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。