我找了这么久还没弄明白。希望有人能帮助这个新来的Python解决我的问题。你知道吗
我试图找出如何在python中编写if/then语句,并对if/then语句执行聚合。我的最终目标是,如果日期=2017年1月7日,则使用“假”列中的值。如果date=all else,则将两列相加求平均值。你知道吗
到目前为止,我掌握的情况如下:
import pandas as pd
import numpy as np
import datetime
np.random.seed(42)
dte=pd.date_range(start=datetime.date(2017,1,1), end= datetime.date(2017,1,15))
fake=np.random.randint(15,100, size=15)
fake2=np.random.randint(300,1000,size=15)
so_df=pd.DataFrame({'date':dte,
'fake':fake,
'fake2':fake2})
so_df['avg']= so_df[['fake','fake2']].mean(axis=1)
so_df.head()
在熊猫中做if-else的一种方法是使用np.where 其中有三个值:condition、if和else
假设您已经计算了平均列:
如果不是,则可以使用相同的计算替换列引用:
要检查多个日期,需要使用or操作符的元素版本(即pipe:
|
)。否则会引发错误。你知道吗上面检查了两个日期。如果是3个或更多,您可能需要将
isin
与列表一起使用:让我们使用
np.where
:输出:
相关问题 更多 >
编程相关推荐