我有一个time
系列和一个flag
DataFrame:
time
0
action -1.0
activ 1.0
actual 1.0
time.index
Index(['action', 'activ', 'actual'], dtype='object')
flag
2000-05-10 2006-06-29
Entry
action 1.386294 1.386294
activ 0.000000 1.000000
actual 0.000000 0.000000
flag.index
Index(['action', 'activ', 'actual'], dtype='object', name='Entry')
我想在两者之间进行分段乘法:
flag.mul(time, axis=1)
2000-05-10 00:00:00 2006-06-29 00:00:00 0
Entry
action NaN NaN NaN
activ NaN NaN NaN
actual NaN NaN NaN
但是,我期望得到这样的结果:
2000-05-10 2006-06-29
Entry
action -1.386294 -1.386294
activ 0.000000 1.000000
actual 0.000000 0.000000
怎么了?
答案 0 :(得分:1)
尝试将代码更改为
flag.mul(time['0'], axis=0)
Out[286]:
2000-05-10 2006-06-29
Entry
action -1.386294 -1.386294
activ 0.000000 1.000000
actual 0.000000 0.000000
您的代码中的问题,数据帧mul
和数据帧,它们应该都具有相同的index
和columns
,在您的情况下,您应该使用pd.Series
,我们也应该选择axis=0