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

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

在 Pandas 數(shù)據(jù)框列表列中查找最大值

在 Pandas 數(shù)據(jù)框列表列中查找最大值

阿晨1998 2024-01-24 16:15:48
我有一個(gè)數(shù)據(jù)框(df):df = pd.DataFrame({'A' : [54321, 'it is 54322', 'is it 54323 or 4?', np.NaN]})我可以找到其中的數(shù)字:df['B'] = df.A.replace(regex={'[^\w]':'','^\D+':'','\D+':' '}).str.split('\s')                   A           B0              54321         NaN1        it is 54322     [54322]2  is it 54323 or 4?  [54323, 4]3                NaN         NaN但是當(dāng)我嘗試找到每行的最大數(shù)字時(shí):df['C'] = df['B'].apply(lambda x : max(x))我得到:TypeError: 'float' object is not iterable
查看完整描述

2 回答

?
江戶(hù)川亂折騰

TA貢獻(xiàn)1851條經(jīng)驗(yàn) 獲得超5個(gè)贊

將 lambda 函數(shù)與 一起使用if-else,還添加了轉(zhuǎn)換為整數(shù)以確保正確max:


f = lambda x : max(int(y) for y in x) if isinstance(x, list) else np.nan

df['C'] = df['B'].apply(f)

print (df)

? ? ? ? ? ? ? ? ? ?A? ? ? ? ? ?B? ? ? ? C

0? ? ? ? ? ? ? 54321? ? ? ? ?NaN? ? ? NaN

1? ? ? ? it is 54322? ? ?[54322]? 54322.0

2? is it 54323 or 4?? [54323, 4]? 54323.0

3? ? ? ? ? ? ? ? NaN? ? ? ? ?NaN? ? ? NaN

或者使用Series.str.extractallforMultiIndex與 Convert toint并使用max每個(gè)第一級(jí):

df = pd.DataFrame({'A' : [54321, 'it is 54322', 'is it 54323 or 4?', np.NaN]})

df['C'] = df.A.astype(str).str.extractall('(\d+)').astype(int).max(level=0)

print (df)

? ? ? ? ? ? ? ? ? ?A? ? ? ? C

0? ? ? ? ? ? ? 54321? 54321.0

1? ? ? ? it is 54322? 54322.0

2? is it 54323 or 4?? 54323.0

3? ? ? ? ? ? ? ? NaN? ? ? NaN


查看完整回答
反對(duì) 回復(fù) 2024-01-24
?
天涯盡頭無(wú)女友

TA貢獻(xiàn)1831條經(jīng)驗(yàn) 獲得超9個(gè)贊

另一個(gè)解決方案:


import re

df['B'] = df['A'].apply(lambda x: pd.Series(re.findall(r'\d+', str(x))).astype(float).max())

print(df)

印刷:


                   A        B

0              54321  54321.0

1        it is 54322  54322.0

2  is it 54323 or 4?  54323.0

3                NaN      NaN


查看完整回答
反對(duì) 回復(fù) 2024-01-24
  • 2 回答
  • 0 關(guān)注
  • 197 瀏覽
慕課專(zhuān)欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

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

公眾號(hào)

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