亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

將 -infinty 值和無窮大值替換為數據幀的最大值和最小值

將 -infinty 值和無窮大值替換為數據幀的最大值和最小值

慕碼人2483693 2023-12-08 17:06:34
我有一個數據框,其中有 infinte 和 -infinite 值,我想將其替換為數據框的最大值和最小值,我可以將 infinte 值替換為 max,但無法對 -infite 值執行相同的操作import pandas as pd import numpy as np  a = float('Inf')b = float('-Inf')v = [1,2,5,a,b,10,5,a,5,100,2,b,b]  df = pd.DataFrame({'Col_A': v})將無限值替換為最大值df['Col_A'].replace([np.inf],max(df['Col_A'].replace(np.inf, np.nan)),inplace=True)df 的片段我想將 inf 值替換為 100,因為這是最大值,將 -inf 替換為 1,因為如果在一個邏輯中可能,則將 -inf 替換為最小值,并且這些值不應被硬編碼
查看完整描述

2 回答

?
幕布斯6054654

TA貢獻1876條經驗 獲得超7個贊

你就快到了:

df['Col_A'].replace([-np.inf],min(df['Col_A'].replace(-np.inf, 
np.nan)),inplace=True)


查看完整回答
反對 回復 2023-12-08
?
慕斯709654

TA貢獻1840條經驗 獲得超5個贊

Min/Max 可以返回 inf 值作為 min/max,因此您可以過濾掉然后替換:

v1 = df.loc[~df['Col_A'].isin([np.inf,-np.inf]),'Col_A'].max()
v2 = df.loc[~df['Col_A'].isin([np.inf,-np.inf]),'Col_A'].min()
df['Col_A'] = df['Col_A'].replace([np.inf,-np.inf], [v1,v2])
df


查看完整回答
反對 回復 2023-12-08
  • 2 回答
  • 0 關注
  • 177 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號