我尝试将两个DataFrames的索引都是DateTime值的两个pandas datetime序列DataFrames的值相减。
有问题的两个DataFrames具有相同数量的列。我想要从第一个DataFrame中的列的值中减去第二个DataFrame中的列中的值,以使用第二个DataFrame中表示的列的新减去的值创建一个新的DataFrame。
下面是我的数据:
import pandas as pd
import numpy as np
import statsmodels.api as sm
In[]: y
Out[]: price
Date
2010-08-29 .0648
2010-08-30 .0751
...
2897 rows × 1 columns
In[]: type(y)
Out[]: pandas.core.frame.DataFrame
这些是我想要从上面的y值中减去的值:
In[]: test = pd.DataFrame(est.predict(X))
test
Out[]: 0
2010-08-29 -5.851237
2010-08-30 -6.835347
2010-08-31 -9.949124
...
2897 rows × 1 columns
当我尝试对上面的数据执行pd.sub()
操作时,返回一个充满NaN值的DataFrame,如下所示:
In[]: vals = y.sub(test)
vals
Out[]: price 0
Date
2010-08-29 NaN NaN
2010-08-30 NaN NaN
...
2897 rows × 2 columns
如何从这两列中减去这些值才能得到如下输出?
1 1.544535
2 -1.945362
3 -3.037018
4 0.882884
...
Name: newFrame, Length: 200, dtype: float64
发布于 2018-08-05 02:58:30
如果列具有相同的名称,则可以在两个数据帧之间使用sub
,例如,通过以下方式创建数据帧test
:
test = pd.DataFrame(est.predict(X),columns=['price'])
https://stackoverflow.com/questions/51688576
复制相似问题