我无法使用"空"内连接来使用MultiIndex.在0.10.1之下,我有:
d1 = pd.DataFrame({
'i1': [1, 2, 2],
'i2': [1, 1, 2],
'a': [10,20,30]}).set_index(['i1', 'i2'])
d2 = pd.DataFrame({
'i1': [3, 3],
'i2': [1, 2],
'b': [40, 50]}).set_index(['i1', 'i2'])
d1.join(d2, how='inner')
Run Code Online (Sandbox Code Playgroud)
这给了我
Exception: Cannot infer number of levels from empty list
Run Code Online (Sandbox Code Playgroud)
这有什么好办法吗?我希望能够预先判断交叉点是否为空,所以我可以避免异常.
这是更容易请求原谅比许可:
import pandas as pd
d1 = pd.DataFrame({'i1': [1, 2, 2], 'i2': [1, 1, 2], 'a': [10, 20, 30]}
).set_index(['i1', 'i2'])
d2 = pd.DataFrame(
{'i1': [3, 3], 'i2': [1, 2], 'b': [40, 50]}).set_index(['i1', 'i2'])
try:
d1.join(d2, how='inner')
except Exception as err:
# Change this to however you wish to handle this case.
print(err)
Run Code Online (Sandbox Code Playgroud)