我们要使用SQL Server创建数据透视表,并且还要计算最近两天的增长率。 p>
这是使用SQL Server的数据透视表的代码。
data=pd.read_sql_query("select CONVERT(varchar,created_on,111) as Date,service_name as TFN,isnull(count(*),0) MC_Count from tablename with(nolock) where created_on>=cast(getdate()-1 as date) and user_Id='xxx' group by CONVERT(varchar,created_on,111),service_name",con)
P=pd.pivot_table(data,index="TFN",columns="Date",values=["MC_Count"],aggfunc={"MC_Count":np.sum})
我想添加另一列“增加百分比”,但我不知道如何。
格式:
预先感谢
答案 0 :(得分:0)
您可以按位置DataFrame.iloc
选择列,减去,除以100
并乘以倍数:
P['growth%'] = ((P.iloc[:, -1] - P.iloc[:, -2]) / P.iloc[:, -2]) * 100
print (P)
15-Jul-18 16-Jul-18 18-Jul-18 growth%
1800XXX 789 800 1009 26.125
18001XX 890 900 900 0.000