Pandas:使用另一个Dataframe

时间:2017-01-28 00:18:12

标签: python-3.x pandas indexing filter

问题:尝试使用掩码过滤一个数据帧,该掩码将其索引与另一个数据帧的索引进行比较。我已经创建了一个布尔掩码,但我的尝试只返回一个空数据集。

问题:有没有办法屏蔽使用索引,或者可能通过将索引转换为列并比较数据帧?

面具看起来像:

my_towns.set_index(['State', 'RegionName'], inplace=True)
index1 = my_towns.index
index2 = qtr_data.index
qtr_data[qtr_data.index.isin(my_towns.index)]

结果是一个空的数据帧。

测试数据集my_townsqtr_data。这些dfs都有多索引。在上面的屏蔽步骤之后,可以从下面的例子中创建一个简单的例子,即使用df2.index作为df1行的过滤器。

df1 = pd.DataFrame({'State' : ['Hawaii', 'Alabama', 'California', 'Washington'], 'Region' : ['Honolulu', 'Mobile', 'Los Angeles', 'Spokane'], '2001q1' : ['123','345','456','567']}).set_index(['State','Region'])

df2 = pd.DataFrame({'State' : ['Alabama', 'California', 'Washington'], 'Region' : ['Mobile', 'Los Angeles', 'Spokane']}).set_index(['State', 'Region'])

0 个答案:

没有答案