3 回答

TA貢獻(xiàn)1853條經(jīng)驗(yàn) 獲得超9個(gè)贊
你可以試試下面的。
df['score']=np.where(df['Day7']>=500,1,"")
或者根據(jù) OP 的評(píng)論(在此處添加@anky_91 的增強(qiáng)解決方案):
np.where((df['Day7']>=500)&(df['Day7']<1000),1,"")
當(dāng)我們打印以下值時(shí)df將是輸出。
Cat Day7 score
0 Advertisir 145
1 Blogs 56
2 Business 92
3 Classfied 23
4 Continuin 110
5 Corporate 1974 1

TA貢獻(xiàn)1811條經(jīng)驗(yàn) 獲得超5個(gè)贊
你已經(jīng)成功了一半。只需使用df.loc[mask, "Score"] = 1:
import numpy as np
import pandas as pd
df = pd.DataFrame({"Day7":np.random.rand(5)*1000,
"Score": np.random.rand(5)})
print(df)
df.loc[(df.Day7>=500), "Score"] = 1
print(df)

TA貢獻(xiàn)1824條經(jīng)驗(yàn) 獲得超5個(gè)贊
df = df.assign(Score=0) df.Score = df.Day7 >= 500
添加回答
舉報(bào)