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

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

檢測(cè)并計(jì)算數(shù)據(jù)框中兩個(gè)列表中的模式

檢測(cè)并計(jì)算數(shù)據(jù)框中兩個(gè)列表中的模式

倚天杖 2023-06-13 14:53:40
我需要檢測(cè)并計(jì)算 UF_cadastral 變量中有多少來(lái)自 UF_med 變量的模式。那是我的數(shù)據(jù)集:df = {'id': [1,2,3],        'UF_med':[['SP', 'SC', 'PA'], ['SP'], ['AM', 'RJ', 'PA', 'RS']],        'UF_cadastral': [['SP', 'PA'], ['SP'], ['AM', 'RS']]}df = pd.DataFrame(df)df.head()雖然我需要計(jì)算模式,但我至少嘗試檢測(cè)一種模式。但是,代碼僅檢測(cè) UF_med 變量的第一個(gè)模式。我用了那個(gè)代碼:df['Detect_Municipio'] = df.apply(lambda x: x['UF_med'] in x['UF_cadastral'], axis=1)結(jié)果應(yīng)該是這樣的:df = {'id': [1,2,3],        'UF_med':[['SP', 'SC', 'PA'], ['SP'], ['AM', 'RJ', 'PA', 'RS']],        'UF_cadastral': [['SP', 'PA'], ['SP'], ['AM', 'RS']],        'Detect_Municipio':[2,1,2]}df = pd.DataFrame(df)
查看完整描述

3 回答

?
qq_笑_17

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

df['check']=[list(set(x).intersection(set(y)))\

  for x, y in zip(df.UF_med, df.UF_cadastral)]


  df['count']=df.check.str.len()






   id          UF_med   UF_cadastral     check     count

0   1      [SP, SC, PA]     [SP, PA]  [SP, PA]      2

1   2              [SP]         [SP]      [SP]      1

2   3  [AM, RJ, PA, RS]     [AM, RS]  [AM, RS]      2

或者只是替換list如下len:


df['amount']=[len(set(x).intersection(set(y))) for x, y in zip(df.UF_med, df.UF_cadastral)]

結(jié)果將是:


id            UF_med UF_cadastral  amount

0   1      [SP, SC, PA]     [SP, PA]       2

1   2              [SP]         [SP]       1

2   3  [AM, RJ, PA, RS]     [AM, RS]       2


查看完整回答
反對(duì) 回復(fù) 2023-06-13
?
RISEBY

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

嘗試改變

df['Detect_Municipio'] = df.apply(lambda x: x['UF_med'] in x['UF_cadastral'], axis=1)

df['Detect_Municipio'] = df.apply( 
   lambda x: len(set(x['UF_med']) & set(x['UF_cadastral'])), axis=1)

表格的元素是列表,因此您可以使用列表交集來(lái)獲取這些列表中的等效元素。Len 讓你得到匹配的數(shù)量。


查看完整回答
反對(duì) 回復(fù) 2023-06-13
?
元芳怎么了

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

我不知道你到底想完成什么,但這是我最好的猜測(cè):


在兩個(gè)列表中查找重疊的列表:


df = {'id': [1,2,3],

        'UF_med':[['SP', 'SC', 'PA'], ['SP'], ['AM', 'RJ', 'PA', 'RS']],

        'UF_cadastral': [['SP', 'PA'], ['SP'], ['AM', 'RS']]}


output = [item for item in df["UF_med"] if item in df["UF_cadastral"]]

#output is [['SP']]

在所有列表中查找重疊的字符串:


df = {'id': [1,2,3],

        'UF_med':[['SP', 'SC', 'PA'], ['SP'], ['AM', 'RJ', 'PA', 'RS']],

        'UF_cadastral': [['SP', 'PA'], ['SP'], ['AM', 'RS']]}


uf_med = {item for sublist in df["UF_med"] for item in sublist}

uf_cadastral = {item for sublist in df["UF_cadastral"] for item in sublist}

output = [item for item in uf_med if item in uf_cadastral]

#output is ['AM', 'PA', 'RS', 'SP']

在相同索引列表中查找重疊的字符串:


df = {'id': [1,2,3],

        'UF_med':[['SP', 'SC', 'PA'], ['SP'], ['AM', 'RJ', 'PA', 'RS']],

        'UF_cadastral': [['SP', 'PA'], ['SP'], ['AM', 'RS']]}


output = [{item for item in list1 if item in list2} for list1, list2 in zip(df["UF_med"], df["UF_cadastral"])]

#output is [{'PA', 'SP'}, {'SP'}, {'AM', 'RS'}]


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

添加回答

舉報(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)