首页 > 解决方案 > 使用python在csv文件中连续查找10个最大数字?

问题描述

目前我正在做一个样本工作,我有一个像这样的 csv 文件。 在此处输入图像描述

这个 csv 文件有 500 行和 100 列。我想从每一行中取 10 个最大值并将其保存在另一个 csv 文件中。 在此处输入图像描述

像第一行的这张图片一样,我想要 10 个最大值。对于接下来的行,他们还为每一行提供 10 个最大值。我想将值保存在另一个 csv 文件中。我该怎么做?熊猫能做到吗?谢谢。

标签: pythoncsv

解决方案


对每一行使用 .nlargest()。

top_n = 10
for i in df.index[:2]:
    print(df.loc[i].nlargest(top_n))

样本输出:

38    9.966130
40    9.954561
56    9.928231
3     9.913417
1     9.912051
42    9.900780
99    9.664838
93    9.590925
17    9.541304
89    9.344992
Name: 0, dtype: float64
51    9.986446
34    9.984288
14    9.860462
80    9.846139
81    9.664080
21    9.599174
11    9.505443
96    9.491560
43    9.471097
19    9.439773
Name: 1, dtype: float64

推荐阅读