Python 数据帧减法结果包含行和数据类型信息
我有一个简单的数据帧,我计算一个非常简单的减法,如下所示:Python 数据帧减法结果包含行和数据类型信息,python,pandas,dataframe,Python,Pandas,Dataframe,我有一个简单的数据帧,我计算一个非常简单的减法,如下所示: p0_cost = cost_df['price1'][cost_df['date']==p0] - \ cost_df['price2'][cost_df['date']==p0] 除了成本之外,我还计算了各种其他统计数据。我将这些统计数据保存到dict()结构中,然后使用该结构创建数据帧 现在,发生的是p0\u cost的值如下所示: 12 213.151824 dtype: float64 实际值21
p0_cost = cost_df['price1'][cost_df['date']==p0] - \
cost_df['price2'][cost_df['date']==p0]
除了成本之外,我还计算了各种其他统计数据。我将这些统计数据保存到dict()
结构中,然后使用该结构创建数据帧
现在,发生的是p0\u cost
的值如下所示:
12 213.151824 dtype: float64
实际值213.151824
,但它也保存行和dtype
信息
我怎样才能得到价值而不是其他的垃圾呢 您正在使用
系列
的值创建一个dict,如果您只需要标量值,则使用将其下标到结果中。值[0]
:
p0_cost = (cost_df['price1'][cost_df['date']==p0] - cost_df['price2'][cost_df['date']==p0]).values[0]
如果只需要标量,请使用
.values[0]
为数组下标:cost_df['price1'][cost_df['date']==p0]。值[0]
谢谢。这很有效。但奇怪的是,减去数据帧会带来所有其他信息。这取决于用例,这里你填充了一个dict,所以你存储的结果是一个系列
,这是设计出来的。Pandas希望您在兼容类型之间执行算术运算,一旦您将返回的类型存储在一个容器中,然后尝试从中生成df,您将遇到问题,因为df将尝试使用dict值中的现有索引和名称/列