gpt4 book ai didi

python - 在向量中使用多行应用

转载 作者:太空宇宙 更新时间:2023-11-03 16:45:01 25 4
gpt4 key购买 nike

我想对一系列向量进行一些数学运算。我想获取向量中两行之间的差异。我的第一直觉是:

def row_diff(prev, next):
return(next - prev)

然后使用它

my_col_vec.apply(row_diff)

但这并没有达到我想要的效果。看来 apply 是逐行的,这很好,但我似乎找不到等效的操作,可以让我通过从下一行中减去上一行来轻松地从旧向量创建一个新向量。

有更好的方法吗?我一直在读this文档,但看起来不像。

谢谢!

最佳答案

要计算行间差异,请使用 diff :

In [6]:
df = pd.DataFrame({'a':np.random.rand(5)})
df

Out[6]:
a
0 0.525220
1 0.031826
2 0.260853
3 0.273792
4 0.281368

In [7]:
df['diff'] = df['a'].diff()
df

Out[7]:
a diff
0 0.525220 NaN
1 0.031826 -0.493394
2 0.260853 0.229027
3 0.273792 0.012940

另外,请尽量避免使用apply,因为通常有可用的矢量化方法

关于python - 在向量中使用多行应用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36391937/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com