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

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

如果在數(shù)據(jù)框列中找到,則返回字符串的關(guān)鍵字

如果在數(shù)據(jù)框列中找到,則返回字符串的關(guān)鍵字

函數(shù)式編程 2021-06-04 21:05:28
我有一個(gè)字符串。我需要查找該字符串中的關(guān)鍵字是否存在于我的數(shù)據(jù)框中。如果存在,我需要返回該關(guān)鍵字。細(xì)繩:question="Joe is Available"question=question.upper()str_list=question.split()str_list出[107]:['JOE', 'IS', 'AVAILABLE']數(shù)據(jù)框:df=pd.DataFrame({"Person1":("Ash","Joe","Harry"),"Person2":("Abe","Lisa","Katty",),"Person3":("Sam","Max","Stone")})df=df.apply(lambda x: x.astype(str).str.upper())Person1 Person2 Person3ASH     ABE     SAMJOE     LISA    MAXHARRY   KATTY   STONE我的嘗試:return_field=""for x in str_list:    print(x)    for i in df.iterrows():        if(df.str.contains(x)):            return_field=x給我 AttributeError: 'DataFrame' 對(duì)象沒(méi)有屬性 'str'預(yù)期產(chǎn)出由于 Joe 出現(xiàn)在數(shù)據(jù)框中,它應(yīng)該返回我“Joe”
查看完整描述

2 回答

?
慕姐8265434

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

如果您重復(fù)執(zhí)行此操作,您可能希望通過(guò) .hash 散列您的值set。此外,您可以使用mapwithstr.upper將數(shù)據(jù)幀值轉(zhuǎn)換為大寫1:


str_all = set(map(str.upper, df.values.ravel()))


question = "Joe is Available"

str_search = set(question.upper().split())


res = str_search & str_all


# {'JOE'}

1您可以使用pd.DataFrame.apply+ lambda,但不推薦這樣做。pd.Series.str目前,字符串操作 via是出了名的慢。lambda在頂部添加一個(gè)循環(huán)會(huì)使情況變得更糟。


查看完整回答
反對(duì) 回復(fù) 2021-06-09
?
白板的微信

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


In [741]: [x for x in str_list if x in df.values]

Out[741]: ['JOE']


查看完整回答
反對(duì) 回復(fù) 2021-06-09
  • 2 回答
  • 0 關(guān)注
  • 134 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號(hào)

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