当前位置: 首页 > 面试题库 >

在组内使用pandas.shift()

何琨
2023-03-14
问题内容

我有一个包含面板数据的数据框,比方说这是100个不同对象的时间序列:

object  period  value 
1       1       24
1       2       67
...
1       1000    56
2       1       59
2       2       46
...
2       1000    64
3       1       54
...
100     1       451
100     2       153
...
100     1000    21

我想添加一个新列prev_value,该列将为value每个对象存储先前的列:

object  period  value  prev_value
1       1       24     nan
1       2       67     24
...
1       99      445    1243
1       1000    56     445
2       1       59     nan
2       2       46     59
...
2       1000    64     784
3       1       54     nan
...
100     1       451    nan
100     2       153    451
...
100     1000    21     1121

我可以通过某种方式使用.shift()和.groupby()吗?


问题答案:

是的,只需执行以下操作:

df['prev_value'] = df.groupby('object')['value'].shift()

对于此示例数据框:

print(df)

     object  period  value
0       1       1     24
1       1       2     67
2       1       4     89
3       2       4      5
4       2      23     23

结果将是:

     object  period  value  prev_value
0       1       1     24         NaN
1       1       2     67        24.0
2       1       4     89        67.0
3       2       4      5         NaN
4       2      23     23         5.0


 类似资料:
  • 我在一个Vue项目中有几个简单的2模态。我想在警报中使用自定义组件。例如: 我的模板。vue 在我亲爱的情态中: 我甚至不确定这是否可能,或者如何做到。

  • 我想将我的数据框按两列分组,然后对分组内的聚合结果进行排序。 现在,我想在每个组中按降序对count列进行排序。然后只取最上面的三排。要获得类似于:

  • 我正在使用python来分析一些大文件,我遇到了内存问题,所以我一直在使用sys.getsizeof()来尝试跟踪使用情况,但是它在Numpy数组中的行为很奇怪。这里有一个例子,涉及到我必须打开的反照率地图: 数据仍然存在,但是对象的大小,一个3600x7200像素的映射,已经从200 Mb变为80字节。我希望我的内存问题结束,把所有的东西都转换成numpy数组,但我觉得这种行为,如果是真的,会在

  • 我想在中使用,如以下示例所示: 使用调用中的code>也不起作用。 可以替换为第二个call,为简洁起见,我没有将其包括在内。

  • 问题内容: 在我的系统中,我有客户。客户有程序。我想显示一个客户端列表,显示其最近的活动(如果存在)程序。 因此,我们有这样的事情: 表示该程序未关闭。因此,它将首先放置未关闭的程序,然后再放置最近关闭的程序。 问题是,排序依据在组内不起作用。它只是随机选择一个程序。我该如何解决? 只是想出了这个: 这似乎给出正确的结果。这是正确的,还是我很幸运?即,我基本上已经在对表进行排序之前对其进行了排序;

  • 问题内容: 我有以下代码: 我想做的是使用base64编码在JEditorPane上呈现图像以存储图像。它不必是base64,但这是我尝试在JEditorPane上呈现HTML内容时所获得的,但是我需要使用BufferedImage上的图像(由应用程序生成),并且,确实希望不必将映像保存到硬盘中的文件中。 我能以某种方式在Swing组件中显示BufferedImage以及HTML(在IMG标签给定