繁体   English   中英

计算 Python pandas 中两个特定行之间的百分比差异

[英]Calculate the percentage difference between two specific rows in Python pandas

问题是我正在尝试运行我选择的特定行来计算特定行值偏离预期输出平均值的百分比(已经从另一列计算),以找出它偏离预期输出平均值的百分比.

我想像这样单独运行每个项目:

下面我做了一个数据框列来存储结果

df['pct difference'] = ((df['tertiary_tag']['price'] - df['ab roller']['mean'])/df['ab roller']['mean']) * 100 

例如,假设平均值是 10 并且我知道该项目是 8 美元,计算出该产品与平均值相差的百分比,并为该数据集的每个项目返回该数字。 返回它偏离平均值的百分比。

请记住,这个问题不是通过循环解决的,因为我确信 Pandas 有更实用的方法来计算百分比差异而不是 pct_change。

我还想也许让非常特定的行创建一个列作为一些索引,这样我就可以使用,并使用它来访问列中的任何行,通过使用该索引和索引进行我的操作,无论你想要什么,例如计算差异两行之间的百分比?

我想也许通过索引价格列?

df = df.set_index(['price']) df.index = pd.to_datetime(df.index) 
def percent_diff(df, row1, row2):
    """
    Calculating the percentage difference between two specific rows in a dataframe
    """
    return (df.loc[row1, 'value'] - df.loc[row2, 'value']) / df.loc[row2, 'value'] * 100

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM