小编Bei*_*nje的帖子

Pandas 按行组应用卷积

我有一个如下所示的熊猫数据框:

   profile_index  point_index         z              x             y
0              0            1 -0.885429  297903.323027  6.669492e+06
1              0            2 -0.820151  297904.117752  6.669492e+06
2              0            3 -0.729671  297904.912476  6.669491e+06
3              0            4 -0.649332  297905.707201  6.669490e+06
4              1            1 -0.692186  297906.501926  6.669490e+06
5              1            2 -0.885429  297903.323027  6.669492e+06
6              1            3 -0.820151  297904.117752  6.669492e+06
3              1            4 -0.649332  297905.707201  6.669490e+06
Run Code Online (Sandbox Code Playgroud)

我想通过在与我的数据框中具有相同“profile_index”的一组行相对应的向量(z 列)上应用带有高斯滤波器的卷积(numpy.convolve)来创建一个新的“z_gauss”列。

我试过做类似的事情

data["z_gauss"] = data.groupby('profile_index').apply(lambda x: np.convolve(x, gaussian, 'same'))

gaussian我的高斯滤波器(矢量)在哪里?但我得到了一些错误,比如ValueError: object too deep for desired array

您对如何进行有任何建议/提示吗?我应该将我的数据帧拆分成不同的数据帧吗?

python numpy pandas

7
推荐指数
1
解决办法
1220
查看次数

标签 统计

numpy ×1

pandas ×1

python ×1