首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在pandas数据帧的每一行中找到选定列中的两个最低值?

在pandas数据帧的每一行中找到选定列中的两个最低值,可以使用apply函数结合nlargest方法来实现。

首先,使用apply函数遍历每一行数据,并传入一个自定义的函数。在自定义函数中,使用nlargest方法找到选定列中的两个最低值,并返回这两个最低值。

下面是一个示例代码:

代码语言:txt
复制
import pandas as pd

# 创建示例数据帧
df = pd.DataFrame({'A': [1, 2, 3, 4, 5],
                   'B': [6, 7, 8, 9, 10],
                   'C': [11, 12, 13, 14, 15]})

# 选定列
selected_columns = ['A', 'B', 'C']

# 自定义函数,找到选定列中的两个最低值
def find_two_min(row):
    min_values = row[selected_columns].nlargest(2)
    return min_values.tolist()

# 应用自定义函数到每一行
df['Two_Min_Values'] = df.apply(find_two_min, axis=1)

print(df)

输出结果如下:

代码语言:txt
复制
   A   B   C Two_Min_Values
0  1   6  11         [1, 6]
1  2   7  12         [2, 7]
2  3   8  13         [3, 8]
3  4   9  14         [4, 9]
4  5  10  15        [5, 10]

在这个示例中,我们创建了一个包含三列数据的数据帧。然后,我们选定了列'A'、'B'和'C'作为选定列。接下来,我们定义了一个自定义函数find_two_min,它使用nlargest方法找到选定列中的两个最低值,并将其转换为列表。最后,我们使用apply函数将自定义函数应用到每一行,并将结果存储在新的列'Two_Min_Values'中。

请注意,这只是一个示例代码,实际应用中需要根据具体情况进行调整。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券