范围内数据框所有列的最小值
Posted
技术标签:
【中文标题】范围内数据框所有列的最小值【英文标题】:min of all columns of the dataframe in a range 【发布时间】:2020-07-22 16:04:19 【问题描述】:我想找到限制为仅几列的数据框每一行的最小值。 例如:考虑一个大小为 10*100 的数据框。我想要中间 5 行的最小值,它的大小为 10*5。
我知道使用 df.min(axis=0) 找到最小值,但我不知道如何限制列数。感谢您的帮助。
我使用熊猫库。
【问题讨论】:
【参考方案1】:您可以首先选择您感兴趣的列切片并将DataFrame.min()
仅应用于该选择:
df.iloc[:, start:end].min(axis=0)
如果您希望这些是中间 5,只需找到对应于该范围的开始和结束的整数索引:
start = int(n_columns/2 - 2.5)
end = start + 5
【讨论】:
【参考方案2】:遵循 'pciunkiewicz 的逻辑:
首先,您应该选择所需的列。您可以使用以下函数:.loc[..]
或 .iloc[..]
。
第一个可以使用列名。当它需要 2 个参数时,第一个是行的索引。第二个是列。
df.loc[[rows], [columns]] # The filter data should be inside the brakets.
df.loc[:, [columns]] # This will consider all rows.
您也可以使用.iloc
。在这种情况下,您必须使用整数来定位数据。因此,您不必知道列的名称,而是知道它们的位置。
【讨论】:
以上是关于范围内数据框所有列的最小值的主要内容,如果未能解决你的问题,请参考以下文章
Pandas DataFrame:如何在行和列范围内获得最小值
如何找到所有数据框的最大值,最小值[不是列值,也不是行] [重复]