我的一些資料包含“0.0”作為空值的占位符。
我需要獲取不是“0.0”的最小值。
在 excel 中這很容易,因為它會詢問您想要哪個最小值,但看起來 pandas.Series.min 并沒有選擇第二小的選項。
請記住,我有時會有多個“0”值。
如何獲得不是 0.0 的最小值?
uj5u.com熱心網友回復:
如果你有一個 series s,那么你可以嘗試:
s = pd.Series([1,0.0,2,3])
min(s[s != 0.0])
這將1.0在本例中回傳。假設您的系列中的所有值都大于或等于 0,這應該給您第二小的值
uj5u.com熱心網友回復:
利用:
s.where(lambda x: x > 0).min()
如果它可以是負數:
s.where(lambda x: x != 0).min()
uj5u.com熱心網友回復:
我假設你只有正數?如果是這樣,這是一個替代解決方案,排序并取第二個值
df.sort_values(by='column_name')['column_name'].values[1]
uj5u.com熱心網友回復:
這么多不同的方式::)
min([ x for x in df['Values'] if x != 0.0])
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/420047.html
標籤:
上一篇:如何為每個ID分配一個組號(n=1,2,3.....)?
下一篇:Django用戶下拉串列
