我试图在两个表a(4条记录)和b(2条记录)之间进行左连接。 但是我的结果数据集有超过8条记录,这不是我所期望的。你知道吗
我使用的数据如下
hh_id|sex|age_group|mgb|wrk_status
----------------------------------
140401100|2|10|1|1
140401100|2|10|1|1
140401100|2|10|2|1
140401100|2|10|2|1
hh_id|sex__|age_group__|mgb_age
-------------------------------
140401100|3|2|36
140401100|3|2|37
我在python中使用以下代码得到以下结果
结果=pd.合并(tt,tt1,on='hh\u id',how='left')
hh_id|sex|age_group|mgb|wrk_status|sex__|age_group__|mgb_age
------------------------------------------------------------
140401100|2|10|1|1|3|2|36
140401100|2|10|1|1|3|2|37
140401100|2|10|1|1|3|2|36
140401100|2|10|1|1|3|2|37
140401100|2|10|2|1|3|2|36
140401100|2|10|2|1|3|2|37
140401100|2|10|2|1|3|2|36
140401100|2|10|2|1|3|2|37
但我需要的结果如下
hh_id|sex|age_group|mgb|wrk_status|sex__|age_group__|mgb_age
------------------------------------------------------------
140401100|2|10|1|1|3|2|36
140401100|2|10|1|1|3|2|37
140401100|2|10|2|1|3|2|37
140401100|2|10|2|1|3|2|37
因此,理想情况下,“a”的第一条记录应该取“b”的第一条记录,“a”的其余记录应该取“b”的第二条记录,我的结果数据集应该只有四条记录,因为它是左连接
提前谢谢!!!你知道吗
当联接键在“right”表中有多个匹配记录时,这是一个左联接工作as expected。你知道吗
您似乎想要的(假设您打算在最后2个所需结果中的一个中键入
36
)是删除重复项,这可以通过从“left”表中选择不同的结果或从join查询中选择不同的结果在开始或结束时实现。你知道吗相关问题 更多 >
编程相关推荐