第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

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

將多行的值更改為 NaN 時出現(xiàn)問題

將多行的值更改為 NaN 時出現(xiàn)問題

catspeake 2023-08-22 15:28:15
我有這個數(shù)據(jù)框:test = database[['WEATHER']]WEATHER 的一些值是“Unknown”和“Other”,這并沒有給它帶來太大的價值,所以我想將它們更改為 NaN。因此,我嘗試以下代碼:for i in range(len(test)):if test['WEATHER'][i] == "Other" or test['WEATHER'][i] == "Unknown":    test['WEATHER'][i] = np.nan并且不斷出現(xiàn)這個錯誤:我一直在嘗試糾正它,但我還沒有找到方法。
查看完整描述

2 回答

?
慕斯王

TA貢獻1864條經(jīng)驗 獲得超2個贊

您的堆棧跟蹤包含KeyError: 15,因此您可能嘗試檢索 key == just 15的行,但您的 DataFrame 不包含這樣的鍵。

現(xiàn)在如何正確有效地完成您的任務(wù)。在有問題的列上使用mask ,并使用inplace

df.WEATHER.mask(df.WEATHER.str.lower().isin(['other', 'unknown']), np.nan, inplace=True)

為了提供正確的處理,無論字母大小寫如何(例如other或 OTHER),我將原始值轉(zhuǎn)換為小寫,然后與“禁止”列表進行比較。


查看完整回答
反對 回復(fù) 2023-08-22
?
汪汪一只貓

TA貢獻1898條經(jīng)驗 獲得超8個贊

通常,您希望避免迭代 pandas DataFrame。我將這樣做:


>>> df.a

0      Other

1    Unknown

2       BLAH

Name: a, dtype: object

>>> df.a = np.choose(df.a.isin(['Other', 'Unknown']), [df.a, np.nan])

>>> df.a

0     NaN

1     NaN

2    BLAH

Name: a, dtype: object

isin()檢查每個值是否在預(yù)定義列表中['Other', 'Unknown'],并np.choose()根據(jù)調(diào)用的布爾結(jié)果賦予一個值isin()。結(jié)果要么是原始值,df.a要么是np.nan。


查看完整回答
反對 回復(fù) 2023-08-22
  • 2 回答
  • 0 關(guān)注
  • 1649 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號