pandas 选择每列的最小值和最大值并创建一个新的数据框

Posted

技术标签:

【中文标题】pandas 选择每列的最小值和最大值并创建一个新的数据框【英文标题】:pandas select the minimum and max of each column and create a new dataframe 【发布时间】:2020-09-09 21:02:32 【问题描述】:

这是我的数据框:

A,B,C,D   
10,1,2,3
 1,4,7,3
10,5,2,3
40,7,9,3
9,9,5,0

感谢您,我刚刚学会了如何根据特定列的最小值和最大值创建一个新的数据框。感谢@CHRD 和@Quang Hoang。

我刚刚意识到这不是我想要的。我想要一个有两行的新数据框,其中新数据框的每一列都有我的数据框每一列的最小值和最大值。这是预期的结果:

     A,B,C,D   
min  1,1,2,0
max 40,9,9,3

我试过这个命令,但它似乎不起作用。

dfr_new = dfr[dfr.columns].min())

【问题讨论】:

对 PS 的回答:没有。您得到了上一个问题的答案,他们回答了您提出的问题。请接受其中一个答案或投票以“奖励”那些努力回答它的人。你会在这里得到新的答案,一切都很好:) 此外,有些人可能正在寻找你在上一个问题中提出的问题 【参考方案1】:

您可以在整个数据帧上调用 .agg

df.agg(['min','max'])
      A  B  C  D   
min   1  1  2  0
max  40  9  9  3

【讨论】:

【参考方案2】:

你可以用这个 pd.DataFrame('min': df.min(), 'max': df.max()).T

    A   B   C   D
min 1   1   2   0
max 40  9   9   3

这是我使用的数据框。

    A   B   C   D
0   10  1   2   3
1   1   4   7   3
2   10  5   2   3
3   40  7   9   3
4   9   9   5   0

【讨论】:

【参考方案3】:
df.describe().loc[['min','max']].astype(int)

    A   B   C   D
min 1   1   2   0
max 40  9   9   3

【讨论】:

以上是关于pandas 选择每列的最小值和最大值并创建一个新的数据框的主要内容,如果未能解决你的问题,请参考以下文章

用于创建具有数据框中每个日期的最小值和最大值的表的函数

如何选择数据表中列的最小值和最大值?

Scala Spark Dataframe 创建一个新列,其中包含另一列的最大先前值和当前值

Pandas 中日期列的最大值/最小值,列包含 nan 值

Pandas/Python 检查中间值和另一列的输出值

Pandas 跨行的最小值和最大值