Odd behavior when broadcasting between DataFrame with MultiIndex and DataFrame with Index #19606
Labels
Bug
Indexing
Related to indexing on series/frames, not to indexes themselves
MultiIndex
Numeric Operations
Arithmetic, Comparison, and Logical operations
Code Sample, a copy-pastable example if possible
Problem description
What I am trying to do is broadcast the values in the DataFrame d2, using the shared name and values in the index with d1 (i.e., the index column
'A'
). The expressiond1+d2
gives this surprising result:The expression
d1.C + d2
gives the error:The final expression
d1.C + d2.E
gives an expected resultExpected Output
Since the broadcast works with adding the two series, for the expression
d1+d2
, I would have expected this result, or maybe an error:I don't see why the first result happens at all. Either the correct addition should happen, or an error should be raised.
Output of
pd.show_versions()
INSTALLED VERSIONS
commit: None
python: 3.6.2.final.0
python-bits: 64
OS: Windows
OS-release: 10
machine: AMD64
processor: Intel64 Family 6 Model 60 Stepping 3, GenuineIntel
byteorder: little
LC_ALL: None
LANG: None
LOCALE: None.None
pandas: 0.22.0
pytest: 3.0.7
pip: 9.0.1
setuptools: 27.2.0
Cython: 0.25.2
numpy: 1.12.1
scipy: 0.19.0
pyarrow: None
xarray: None
IPython: 5.3.0
sphinx: 1.5.6
patsy: 0.4.1
dateutil: 2.6.0
pytz: 2017.2
blosc: None
bottleneck: 1.2.1
tables: 3.2.2
numexpr: 2.6.2
feather: None
matplotlib: 2.0.2
openpyxl: 2.4.7
xlrd: 1.0.0
xlwt: 1.2.0
xlsxwriter: 0.9.6
lxml: 3.7.3
bs4: 4.6.0
html5lib: 0.999
sqlalchemy: 1.1.9
pymysql: None
psycopg2: None
jinja2: 2.9.6
s3fs: None
fastparquet: None
pandas_gbq: None
pandas_datareader: None
The text was updated successfully, but these errors were encountered: