-1

我想学习如何在熊猫中循环使用带有条件的列名。例如,我有一个列表 T = [400,500,600]。我有列名为 G_ads_400、G_ads_500 的数据框 ...如果 T 的值与 G_ads_ 匹配,我想获取 G_ads_ 列的最小值 ...打开其他建议)例如:当 T = 400 时取 G_ads_400 的最小值这是我的代码

T = [400,500,600,700]
for t in T:
    if t in df.columns[df.columns.str.contains('t')]:
         min_value = df.columns.min()
print(min_value)

我尝试了其他几种方法,但没有奏效。它要么是返回错误,要么只是列的名称。谢谢!

4

1 回答 1

0

我认为您可以像这样轻松地做到这一点。这将返回与 T 值匹配的列的所有最小值。

T = [400,500,600,700]
columns = [f"G_ads_{i}" for i in T]
res=df[columns].min()

如果您需要最小值作为数据框

res=df[columns].min().to_frame().T
于 2020-06-19T00:15:33.313 回答