我有2列的DataFrame。我需要知道问题在什么时候增加了。

In [19]: status
Out[19]:
   seconds  questions
0   751479    9005591
1   751539    9207129
2   751599    9208994
3   751659    9210429
4   751719    9211944
5   751779    9213287
6   751839    9214916
7   751899    9215924
8   751959    9216676
9   752019    9217533


我需要更改“问题”列的百分比,然后对其进行排序。这不起作用:

status.pct_change('questions').sort('questions').head()


有什么建议么?

最佳答案

请尝试这种方式:

>>> status['change'] = status.questions.pct_change()
>>> status.sort_values('change', ascending=False)

   questions  seconds    change
0    9005591   751479       NaN
1    9207129   751539  0.022379
2    9208994   751599  0.000203
6    9214916   751839  0.000177
4    9211944   751719  0.000164
3    9210429   751659  0.000156
5    9213287   751779  0.000146
7    9215924   751899  0.000109
9    9217533   752019  0.000093
8    9216676   751959  0.000082


pct_change可以在Series以及DataFrames上执行,并且对于要计算转换的周期数接受整数参数(默认值为1)。

我还假设您要对'change'列进行排序,以最大的百分比变化显示在最前面...

09-12 18:42