print(df.groupby('clienthostid').LoginDaysSum.nlargest(2).sort_values(
    ).groupby(level=0).pct_change().dropna().add(1).reset_index(1, drop=True))
clienthostid
Pandas, get max and second place from sub column in dataframe