我想創建一個帶有 for 回圈的函式,該函式遍歷一個小資料框,并根據設定的條件添加一個具有不同值的新列。
我已經嘗試了下面的方法,但它為所有行回傳我的第一個 if 陳述句的輸出(它為每一行列印“頂級買家”):
def CustomerSegmentClassifier(df):
for i, row in df.iterrows():
if (df['Recency'] <= 200).any() or (df['Frequency'] >= 20).any():
df.at[i,'Cluster Name'] = 'Top Buyers'
elif (df['Recency'].between(201, 750)).any() or (df['Frequency'].between(5,19)).any():
df.at[i,'Cluster Name'] = 'Casual Buyers'
else:
df.at[i,'Cluster Name'] = 'Churned Buyers'
return df

轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/364998.html
