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

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

根據(jù)多個(gè)條件從 Pandas DataFrame 中隨機(jī)選擇行

根據(jù)多個(gè)條件從 Pandas DataFrame 中隨機(jī)選擇行

翻過高山走不出你 2023-09-19 14:46:47
我正在嘗試使用 Python 來(lái)對(duì) QA 進(jìn)行數(shù)據(jù)采樣。我的標(biāo)準(zhǔn)是審核 2 個(gè)人,然后根據(jù)風(fēng)險(xiǎn)級(jí)別對(duì)其各自的供應(yīng)商進(jìn)行隨機(jī)抽樣。所以我需要一個(gè)腳本,基本上是這樣的:如果或當(dāng) PM 所有者是 Alex 時(shí),則隨機(jī)選擇嚴(yán)重風(fēng)險(xiǎn)、高風(fēng)險(xiǎn)、中風(fēng)險(xiǎn)和低風(fēng)險(xiǎn)各 1 個(gè)(只要存在 1 個(gè))。WHILE df['PM Owner'] == 'Alex':     IF df['Risk Tier'] == 'Critical':         df['Risk Tier'].sample()我收到此錯(cuò)誤:The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all()`然后我需要為另一個(gè)人重復(fù)這個(gè)循環(huán)。我已經(jīng)嘗試過if循環(huán)while但沒有獲得我需要的成功。我的專欄是'PM Owner'和'Risk Tier'。
查看完整描述

2 回答

?
慕標(biāo)琳琳

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

我不確定我的問題是否正確,但至少這個(gè)答案會(huì)幫助其他人給你答案如果這不是你要找的,請(qǐng)給我機(jī)會(huì)


import pandas as pd

#your dataframe  

maindf = {'PM Owner': ['A', 'B','C','A','E','F'], 'Risk Tier': [1,3,1,1,1,2],'sam' :['A0','B0','C0','D0','E0','F0']}

Maindf = pd.DataFrame(data=maindf)

 


#what you are looking for

filterdf = {'PM Owner': ['A'  ], 'Risk Tier': [ 1 ]}

Filterdf = pd.DataFrame(data=filterdf)


 

#Filtering

NewMaindf= (Maindf[Maindf[['PM Owner','Risk Tier']].astype(str).sum(axis = 1).isin(

                Filterdf[['PM Owner','Risk Tier']].astype(str).sum(axis = 1))])

#Just one sample

print( (NewMaindf).sample())

#whole dataset after filtering

print( (NewMaindf) )

結(jié)果 :


 PM Owner  Risk Tier sam

3        A          1  D0

  PM Owner  Risk Tier sam

0        A          1  A0

3        A          1  D0


查看完整回答
反對(duì) 回復(fù) 2023-09-19
?
30秒到達(dá)戰(zhàn)場(chǎng)

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

您指定的條件可以匹配許多行,這就是您收到錯(cuò)誤的原因,同時(shí)建議您使用將結(jié)果減少為單個(gè)值的函數(shù)之一。然而,目前形式的條件實(shí)際上可以用作掩模,因此只需縮小范圍即可抽取符合標(biāo)準(zhǔn)的樣本,即:

df.loc[(df['PM Owner'] == 'Alex') & (df['Risk Tier'] == 'Critical'), 'Risk Tier'].sample()

如果您需要循環(huán)遍歷每個(gè) PM 所有者,您可以這樣做:

for pm_owner in df['PM Owner']:
    sample = df.loc[(df['PM Owner'] == pm_owner) & (df['Risk Tier'] == 'Critical'), 'Risk Tier'].sample()



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

添加回答

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