使用Python熊猫,如何创建一个函数来计算代表比前一行低的值的行的比例?

新到Python:

使用Python熊猫,如何创建一个函数来计算代表比前一行低的值的行的比例?因此,换句话说,我需要一个函数来遍历Pandas数据框的特定系列列下的值,并且仅计算下一行的值(在称为“ Mileage”的列下)小于当前行值的那些值。就像说你有这样的:里程:第1行:30行2:20行3:40行4:50行5:60第6行:55第7行:75

如果计数器工作正常,它将发现第2行的值20小于第1行的值30,因此它将为计数器加+1(计数为1)。
在上面的示例中,它应该计数的另一行是第6:55行,该行小于上一行的第5:60行,因此计算该行。因此最终计数为:2.然后,我可以将最终计数除以总行数以获得比例。

预先感谢您的任何帮助!

d_kennetz:

您可以使用以下series.shift功能执行此操作

proportion = len(df[df['Mileage'] < df['Mileage'].shift(1)])/len(df)
print(proportion)

输出:

0.2857142857142857

代码的一部分:

df[df['Mileage'] < df['Mileage'].shift(1)]

使用遮罩仅选择满足该条件的行(在本例中为2),因此我们将其len除以lendf 的总和得到比例。.shift(1)允许您访问下一行的值,以便您可以通过这种方式与当前行进行比较。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

熊猫计算行值作为同一行和前一行中先前值的函数

根据前一个的值计算一行的下一个内容

如何创建一个函数来计算年份?

如何用列计算在R中创建一个数据帧,该计算引用前一行中的自身值?

如何使用前一行的值以及同一行中其他列的值来计算熊猫中一列的值

如何使用reduce、map或filter创建一个函数来显示和计算数组对象的每个值?

使用熊猫系列中前一个“行”的值

Python:如何从一行值创建一个完整的距离矩阵?

在熊猫的前一行中获取第一个非零值

如何加快涉及熊猫的前一行的计算?

编写一个对熊猫数据帧中一行中的某些值求和的函数

Python - 在熊猫列的计算中引用前一行

如何创建一个新的DataFrame,其中每一列代表一个实例在上一个DataFrame的一行中的出现

如何创建一个函数来指定 Python 中的 bin 值

在依赖于前一行值的DataFrame上应用一个函数

如何创建一个函数来计算和返回平均值、最大值和最小值?

使用前一行的值计算下一行的值

如何编写一个迭代函数,使当前行输出基于前一行输出?

如何使用熊猫和/或plotly在Python中每x行创建一个新表?

对每一行应用一个函数来检查另一个向量

在SQL中使用前一行中的上一个值作为null

如何使用熊猫选择前一行

如何使用一行中所有括号内包含的值创建一个新列?

用于从Python Pandas的第一行计算值的函数

如何在上一个文本的前一行添加一行?

使用每一行的非空值创建一个新列

如何创建一个向量,其值是由函数获得的,该函数为每一行返回不同的值?

Python:迭代 CSV 的每一行,计算每一行中的令牌,使用原始 CSV 的每一行的令牌数创建一个新的 CSV

如何获得熊猫中每一行的前 3 个最小和前 3 个最高值?