阅读 309

Python - 对 Pandas DataFrame 的行进行排名

添加一列,其中包含提供的数据框中每一行的排名,这将有助于我们对数据框进行排序并确定特定元素的排名,例如 -

我们的数据框

名称播放时间(小时)速度
0使命召唤45优于平均水平
1总过量46好的
2侠盗猎车手352最好的事物
3欺负22平均数

输出结果

名称播放时间(小时)率排名
0使命召唤45优于平均水平3.0
1总过量46好的2.0
2侠盗猎车手352最好的事物1.0
3欺负22平均数4.0

现在,正如你在上面的例子中所看到的,我们的排名是整数,但旁边有一个小数,这意味着我们也可以对实数进行排名,当多个元素在一个元素中具有相同的排名时就会发生这种情况。数据框比在这种情况下我们的排名在元素之间划分。因此,他们有一个实数作为他们的等级。

现在我们如何将等级分配给我们的数据框

为了将排名分配给我们的数据框的元素,我们使用了 Pandas 库的一个内置函数,即. rank()功能。我们将根据我们对元素进行排名的标准传递给它,该函数在存储排名的每一行中返回一个新列。

示例

使用 . rank()功能是 


import pandas as pd
games = {'Name' : ['Call Of Duty', 'Total Overdose', 'GTA 3', 'Bully'],
       'Play Time(in hours)' : ['45', '46', '52', '22'],
        'Rate' : ['Better than Average', 'Good', 'Best', 'Average']}
df = pd.DataFrame(games)
df['ranking'] = df['Play Time(in hours)'].rank(ascending = 0)
print(df)# 用 Python 编写的 Hello World 程序   print ("你好,世界!");

输出结果

    Name Play Time(in hours)       Rate ranking0  Call Of Duty   45     Better than Average 3.01  TotalOverdose  46     Good                2.02  GTA 3          52     Best                1.03   Bully        22      Average             4.0


以上代码说明

在这段代码中,我们只是使用熊猫库的内置函数对给定数据框中存在的每个元素进行排名。我们可以使用最佳标准对“播放Time(in hours)”列中的元素进行排名。

现在我们在我们的数据框中添加一个名为“ranking”的列,并使用我们的. rank()在其中运行并传递我们需要对其元素进行排名的列名(在本例中,它是播放Time(in hours)列),现在当我们创建新列时,我们打印我们的数据框。

结论

在本教程中,我们对数据框中的行进行排名,然后使用 pandas 库及其内置函数打印我们的数据。对pandas数据帧的行进行排名是一个简单的过程,但您需要正确遵循上述方法。


文章分类
百科问答
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐