【发布时间】:2017-12-06 19:12:23
【问题描述】:
我有两个数据框
主人
P_ID C_ID D_ID ...
520686814 1222 1281
336892632 1232 8181 ...
和
str(master$P_ID) : integer64 [1:12000] 520686814 336892632 140101133 85433815 339389222
还有
维度
p_id year gender state
520686814 2017 1 A
336892632 2016 2 B
和
str(Dimension$p_id) : num [1:9915433] 520686814 336892632 636774575 248552775...
所以基本上我可以看到在两个数据帧中都有匹配 p_id 的记录。所以我使用
进行连接joined <- merge(master, Dimension, by.x = "P_ID", by.y = "p_id")
令我惊讶的是,我没有得到任何记录。联接是否不适用于不同的数据类型,即使它们在子集时有效?
【问题讨论】:
-
integer64是 R 原子类吗?根据您使用的软件包,它可能会将integer64存储为character。然后应该清楚地看到为什么您的合并不起作用。您能否澄清一下您是如何生成integer64数据的?