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

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

您正在嘗試合并 object 和 float64 列。如果你想繼續(xù),你應(yīng)該使用 pd.concat

您正在嘗試合并 object 和 float64 列。如果你想繼續(xù),你應(yīng)該使用 pd.concat

炎炎設(shè)計(jì) 2022-07-26 16:02:07
我想分別找到所有功能的欺詐率,然后用功能值替換這個值。例如,我的樣本數(shù)據(jù)在下面,然后我想找到我的模型的欺詐率,如 STEP1,然后我想用模型的值替換,如 STEP2。我的代碼在下面找到這個值,但它不起作用。錯誤代碼也在下面。有人可以幫助我嗎?for i in df2_a.columns:    grp1 = df2.groupby(i, as_index=False, sort=True, group_keys=True)[['EXT_REFERENCE']].count()    df3 = df2[df2.FRAUD == 0]    grp2 = df3.groupby(i, as_index=False, sort=True, group_keys=True)[['EXT_REFERENCE']].count()    df4 = df2[df2.FRAUD == 1]    grp3 = df4.groupby(i, as_index=False, sort=True, group_keys=True)[['EXT_REFERENCE']].count()    grp4 = grp1.merge(grp2, how = 'left', on=i )    grp5 = grp4.merge(grp3, how = 'left', on=i )    grp6 = grp5.fillna(0)    grp6[i+'_New'] = grp5.EXT_REFERENCE / grp5.EXT_REFERENCE_x    grp7 = grp6.fillna(0)    grp8 = grp7.drop(['EXT_REFERENCE','EXT_REFERENCE_x','EXT_REFERENCE_y'],axis=1)    df5 = pd.merge(df2_a, grp8, on=i, how='left')---------------------------------------------------------------------------ValueError                                Traceback (most recent call last)<ipython-input-39-225543878353> in <module>  6     grp3 = df4.groupby(i, as_index=False, sort=True, group_keys=True)[['EXT_REFERENCE']].count()  7     grp4 = grp1.merge(grp2, how = 'left', on=i )----> 8     grp5 = grp4.merge(grp3, how = 'left', on=i )  9     grp6 = grp5.fillna(0) 10     grp6[i+'_New'] = grp5.EXT_REFERENCE / grp5.EXT_REFERENCE_x/opt/anaconda/envs/env_python/lib/python3.6/site-packages/pandas/core/frame.py in merge(self, right, how, on, left_on, right_on, left_index, right_index, sort, suffixes, copy, indicator, validate)6866                      right_on=right_on, left_index=left_index,6867                      right_index=right_index, sort=sort, suffixes=suffixes,-> 6868                      copy=copy, indicator=indicator, validate=validate)6869 6870     def round(self, decimals=0, *args, **kwargs):
查看完整描述

2 回答

?
慕妹3146593

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

干得好:


import pandas as pd


df = pd.DataFrame({'Model': ['audi', 'audi', 'bmw', 'bmw', 'ford', 'ford'],'Age':[1,2,1,2,1,2] , 'Fraud': [1,1,0,0,1,0]})


# group df by Age

grouped_age = df.groupby('Age', as_index=False).mean()

merged_df = pd.merge(df, grouped_age, on=['Age'], how='inner')

df = merged_df.rename({'Age': 'x', 'Fraud_x': 'Fraud', 'Fraud_y':'Age'}, axis='columns')

df = df.drop('x', axis=1)


# group df by Model

grouped_df = df.groupby('Model', as_index=False).mean()

merged_df = pd.merge(df, grouped_df, on=['Model'], how='inner')

# some display corrections

df = merged_df.rename({'Model': 'x', 'Fraud_x': 'Fraud', 'Fraud_y':'Model', 'Age_x':'Age'}, axis='columns')

df = df.drop(['x', 'Age_y'], axis=1)

df = df[['Model', 'Age', 'Fraud']]

df['Model'] = df['Model'] * 100

df['Age'] = (df['Age'] * 100).round(0)

輸出:


   Model   Age  Fraud

0  100.0  67.0      1

1  100.0  33.0      1

2    0.0  67.0      0

3    0.0  33.0      0

4   50.0  67.0      1

5   50.0  33.0      0


查看完整回答
反對 回復(fù) 2022-07-26
?
PIPIONE

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

我不確定我是否理解您的代碼,但在這里我將如何做到這一點(diǎn):


for col in df.iloc[:, :-1]:

    group_df = df.groupby(col).mean()*100

    df[col] = df[col].map(group_df['Fraud'])

結(jié)果


    Model   Age         Fraud

0   100.0   66.666667   1

1   100.0   33.333333   1

2   0.0     66.666667   0

3   0.0     33.333333   0

4   50.0    66.666667   1

5   50.0    33.333333   0

它假定欺詐 col 將是最后一個 col


查看完整回答
反對 回復(fù) 2022-07-26
  • 2 回答
  • 0 關(guān)注
  • 105 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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