首页 > 解决方案 > python数据透视表 - 添加另一列

问题描述

我们想使用 SQL Server 创建一个数据透视表,并且我们想计算过去两天的增长百分比。

这是使用 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})

我想添加另一列增加百分比,但我不知道如何。

格式:

在此处输入图像描述

提前致谢

标签: pythonsqlpandasdataframepivot-table

解决方案


您可以按位置按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

推荐阅读