我想在每行中为“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
提交
取消