我想在每行中為“Score”列添加“1”,其中以下語句為真,import pandas as pdimport numpy as npdf = pd.read_csv(Path1 + 'Test.csv')df.replace(np.nan, 0, inplace=True)df[(df.Day7 >= 500)]樣本輸出
3 回答

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

四季花海
TA貢獻1811條經驗 獲得超5個贊
你已經成功了一半。只需使用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)
添加回答
舉報
0/150
提交
取消