2014-09-03 28 views
0

什麼是熊貓相當於這個SQL文本:大熊貓相當於SQL從哪多個表

table a: 
group1 group2 value1 
a  2  1.1 
b  3  1.5 

table b: 
group1 group2 value2 
a  2  1.8 
b  3  2.1 

SELECT a.group1, a.group2, a.value1, b.value2 
FROM a, b 
WHERE a.group1 = b.group1 and a.group2 = b.group2 

result: 
group1 group2 value1 value2 
a  2  1.1  1.8 
b  3  1.5  2.1 

我曾嘗試合併和加入,但是,我真正的數據集中的每個單列被添加,我只想列從一個單獨的數據框中匹配,就像這個SQL例子。

回答

1

你的SQL相當於一個內部連接,所以這個怎麼樣?

In [79]: a.merge(b, on=['group1','group2']) 
Out[79]: 
    group1 group2 value1 value2 
0  a  2  1.1  1.8 
1  b  3  1.5  2.1 
+0

當我在我的實際數據集上這樣做時,我得到了超過500萬行返回。它應該在3萬左右。 – camdenl 2014-09-03 14:53:20

+1

@camdenl你確定你指定了關鍵字或'how ='inner''嗎?這應該工作(添加一些不匹配的行到你的例子,並試一試)。 – Ajean 2014-09-03 14:57:21

+0

這是SQL的等價物,不幸的是這不是我正在尋找的。 – camdenl 2014-09-03 15:10:41