I have a MultiIndex DataFrame that contains these values:
AAPL
minor
2007-09-14 OC 0.024436
2007-09-15 CC 0.030293
CO 0.017518
OC 0.024688
OO 0.031835
# to_dict():
{'AAPL': {(<Timestamp: 2007-09-14 00:00:00>, 'OC'): 0.024436265475779286,
(<Timestamp: 2007-09-15 00:00:00>, 'CC'): 0.030293017084353703,
(<Timestamp: 2007-09-15 00:00:00>, 'CO'): 0.017518449703066673,
(<Timestamp: 2007-09-15 00:00:00>, 'OC'): 0.024688182799779634,
(<Timestamp: 2007-09-15 00:00:00>, 'OO'): 0.031834725061579666}}
—
and a Series that contains these values:
CC 15.874508
CO 18.590320
OC 30.503468
OO 15.874508
# to_dict():
{'CC': 15.874507866387544,
'CO': 18.590320061795602,
'OC': 30.503467646507644,
'OO': 15.874507866387544}
I’d like to multiply all of the minor index CC values by the CC value in the Series, and the same with the other values. I saw another question on here that gave me the .mul method, but when I try that, even with the level=’minor’, it tells me:
TypeError: can only call with other hierarchical index objects
I’ve unstacked the minor index to make it columns, and specified level=’minor’, axis=’columns’ with the same result.
Finally, the end result is to be able to run this same calculation on a DataFrame where the major columns are several equities — in that instance, would .mul() work against each equity as well?
Thanks for your assistance!
Series based it works with
level:Then you can insert it again into your DataFrame. But that should work with DataFrames too, maybe you can suggest it.