python - 获取大型 numpy 数组中星标值的索引
问题描述
我有 12 个 numpy 数组,每个数组包含 1000 个值。一些值周围有一个星号,表示我需要从数组中删除该值。其他人没有,很难检查这些在哪里。下面的代码类似(但较小的示例):
nums1 = np.array([654, 648, 213, *684*, 516, 654, *987*, 321])
nums2 = np.array([68, 89, 36, 879, 78, 213, 89, 79])
nums3 = np.array([432, *87*, 809, 312, 76, *890*, 234, 32])
有什么方法可以测试每一个并获得一个索引数组,以便我可以删除其他数组中的值及其对应的伙伴?这又是一个例子,我的数组要大得多。我的理想输出类似于:
bad_values_nums1 = np.array([3, 6])
bad_values_nums2 = np.array([])
bad_values_nums3 = np.array([1, 5])
解决方案
假设您的意思是有一个字符串数组,您可以执行以下操作:
nums1 = np.array(['654','648', '213', '*684*', '516', '654', '*987*', '321'])
bad_values_nums1 = [i for i,v in enumerate(nums1) if v[0] == '*' and v[-1] == '*']
推荐阅读
- python - Python:通过从字符串读取将多个子元素附加到父元素
- php - Symfony 4 & Doctrine 2 在从集合中删除(第一个)项目后序列化导致转换为 JSON 对象而不是数组
- git - 如何恢复头部之前分支中的多个更改,但都来自同一个子分支?
- sqlite - SQLite Unix时间戳获取早于2天前的日期
- c# - 如何知道 Windows 应用商店应用程序已在 C# 或 VB 中终止?
- maven - Maven:根据星期几修改工件版本
- php - 从 laravel 会话中清除数组(laravel 5.2)
- plc - B&R Automation Studio 转移发布活动
- c# - EF 不首先识别代码的列属性?
- c# - 始终在 Visual Studio 中运行自定义生成事件(不使用 VC++)