为两个阵列中的相似元素获取一个遮罩,并将其应用于第三个阵列

派瑟

我有很多花车

x1 = [3418.008 3422.007 3424.007 3425.995 3428.026 3430.003 3539.979 3541.957
 3650.041 3654.06  3656.062 3658.066 3660.019 3662.024 3664.024 3666.041
 3667.985 3669.976 3672.009 3674.007 3767.969 3769.959 3771.959 3773.976
 3775.975 3777.974 3779.97  3781.993 3784.002 3785.993 3787.991 3789.998
 3791.997 3794.022 3882.009 3884.043 3886.036 3888.028 3890.007 3890.007
 3892.015 3894.018 3895.983 3897.987 3903.978]

和一个不同长度的整数

x2 = [2870 2871 2872 2873 2874 2875 2876 2877 2878 2879 2880 2881 2882 2883 ... 3936 3937 3938 3939 3940 3941].

它们都代表时间,这是由两种不同的仪器以不同的采样率测量的。x2还对应另一个长度相同的数组,

y2 =[ 9.000e-04 -1.000e-03  4.000e-04 -2.000e-03  1.000e-04 -1.600e-03 ... 1.200e-03  3.100e-03 -1.000e-03  6.000e-04]

(还包含零和负数)。这表示根据时间x2测得的可变量。

我想获得y2的修改版本,使其仅包含与x2值(最接近x1最近的元素)相对应的元素。如果最接近x1的x2元素为负,为零或它们的差大于epsilon,则y2_mod中的对应值也应删除。

我想这意味着对x2到x1应用某种蒙版,获取索引,或者对y2应用相同的蒙版?

皮昆基维奇

编辑:我想我第一次就误解了这个问题,尝试一下。

要查找最接近的元素,可以np.meshgrid将问题转换为二维并获得阵列之间的距离矩阵:

xx1, xx2, = np.meshgrid(x1, x2)
dist = np.abs(xx1 - xx2)

idx = dist.argmin(axis=0)
x2_mod = x2[idx] # same shape as y2_mod
y2_mod = y2[idx] # same shape as x2_mod

在这里,您可以基于负值和epsilon将屏蔽条件应用于阵列:

mask = (y2_mod >= 0) & (dist.min(axis=0) < eps)

y2_mod[mask]

根据您最近关于平均负值的评论:

# convolve your signal with an averaging kernel
kernel = [0.5, 0, 0.5]
avg = np.convolve(y2_mod, kernel, mode='same')

# apply boundary conditions (only consider one neighbor)
avg[[0, -1]] = y2_mod[[1, -2]]

# fill in the masked values
mask = y2_mod < 0
y2_mod[mask] = avg[mask]

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何添加两个不等数组的每个元素并将其存储在第三个数组中?

来自分类Dev

如何获取第一个查询的ID并将其用于第三个查询?

来自分类Dev

如何从其他两个函数获得“如果为真”结果并将其用于第三个函数?

来自分类Dev

根据第三个元素对列表进行排序,并返回两个第一个元素

来自分类Dev

对两个表中的值进行一些计算,并将其存储在第三个表中

来自分类Dev

比较两个csv文件中的列并将结果写入第三个

来自分类Dev

从SQL查询中获取第一个/第二个/第三个元素

来自分类Dev

从SQL查询中获取第一个/第二个/第三个元素

来自分类Dev

如何从两个DataGridViews中获取数据到第三个DataGridView中?

来自分类Dev

如何从两个相关表中获取数据并放入第三个表

来自分类Dev

根据第三个列表中的一个随机项,从两个列表之一中选择一个随机项

来自分类Dev

如何合并两个3D阵列的蒙版并将其应用于单独的3D阵列?

来自分类Dev

从两个数组中获取正数,然后从中创建第三个

来自分类Dev

从两个数组中获取正数,然后从中创建第三个

来自分类Dev

两个文本列和一个图像作为div的第三个

来自分类Dev

MySql从两个表中多次选择并将它们的结果连接到第三个表

来自分类Dev

根据Haskell中第三个列表的元素从两个列表中选择元素

来自分类Dev

用另一个 dicts dict 检查 dicts 的复杂 dict 中的值并将其保存为第三个字典

来自分类Dev

将两个不同数组的元素合并到第三个数组

来自分类Dev

awk 找到两个文件的公共行并将这些行合并到第三个文件中的一行

来自分类Dev

两个栅格之间的ScatterPlot,为第三个栅格提供颜色

来自分类Dev

如果第三个键为真,则比较mongodb文档的两个键

来自分类Dev

将图标插入第三个 td,而前两个 td 为空

来自分类Dev

如何从两个表中获取ID列表并在我的SQL中传递第三个表

来自分类Dev

将两个 Maven 模块合并到一个 jar 中,并让第三个模块在指定位置生成 jar

来自分类Dev

对两个向量应用逻辑计算并在第三个向量中返回结果

来自分类Dev

如何从jQuery中的.each循环中获取第一个,第二个和第三个元素的值?

来自分类Dev

javaScript将两个数字相乘并将结果显示到第三个html输入中

来自分类Dev

将两个表中的值插入第三个表中

Related 相关文章

  1. 1

    如何添加两个不等数组的每个元素并将其存储在第三个数组中?

  2. 2

    如何获取第一个查询的ID并将其用于第三个查询?

  3. 3

    如何从其他两个函数获得“如果为真”结果并将其用于第三个函数?

  4. 4

    根据第三个元素对列表进行排序,并返回两个第一个元素

  5. 5

    对两个表中的值进行一些计算,并将其存储在第三个表中

  6. 6

    比较两个csv文件中的列并将结果写入第三个

  7. 7

    从SQL查询中获取第一个/第二个/第三个元素

  8. 8

    从SQL查询中获取第一个/第二个/第三个元素

  9. 9

    如何从两个DataGridViews中获取数据到第三个DataGridView中?

  10. 10

    如何从两个相关表中获取数据并放入第三个表

  11. 11

    根据第三个列表中的一个随机项,从两个列表之一中选择一个随机项

  12. 12

    如何合并两个3D阵列的蒙版并将其应用于单独的3D阵列?

  13. 13

    从两个数组中获取正数,然后从中创建第三个

  14. 14

    从两个数组中获取正数,然后从中创建第三个

  15. 15

    两个文本列和一个图像作为div的第三个

  16. 16

    MySql从两个表中多次选择并将它们的结果连接到第三个表

  17. 17

    根据Haskell中第三个列表的元素从两个列表中选择元素

  18. 18

    用另一个 dicts dict 检查 dicts 的复杂 dict 中的值并将其保存为第三个字典

  19. 19

    将两个不同数组的元素合并到第三个数组

  20. 20

    awk 找到两个文件的公共行并将这些行合并到第三个文件中的一行

  21. 21

    两个栅格之间的ScatterPlot,为第三个栅格提供颜色

  22. 22

    如果第三个键为真,则比较mongodb文档的两个键

  23. 23

    将图标插入第三个 td,而前两个 td 为空

  24. 24

    如何从两个表中获取ID列表并在我的SQL中传递第三个表

  25. 25

    将两个 Maven 模块合并到一个 jar 中,并让第三个模块在指定位置生成 jar

  26. 26

    对两个向量应用逻辑计算并在第三个向量中返回结果

  27. 27

    如何从jQuery中的.each循环中获取第一个,第二个和第三个元素的值?

  28. 28

    javaScript将两个数字相乘并将结果显示到第三个html输入中

  29. 29

    将两个表中的值插入第三个表中

热门标签

归档