【问题标题】:Getting indices of elemenst of list that meet certain expression - Wolfram Mathematica获取满足特定表达式的列表元素的索引 - Wolfram Mathematica
【发布时间】:2020-10-09 23:16:51
【问题描述】:

是否有方法获取列表 Wolfram Mathematica 中某些元素的索引?为了可视化问题说我有两个列表, {2,3,4,5} 和 {s1,s2,s3,s4}。我想获取第一个列表的偶数元素的索引,因此得到 {1,3} 并从第二个列表中获取对应的元素,即 s1,s3。我知道有 Select[] 方法,但这需要元素而不是索引 感谢您的帮助。

【问题讨论】:

    标签: wolfram-mathematica where-clause


    【解决方案1】:

    首先,让

    l1 = {2, 3, 4, 5}; l2 = {s1, s2, s3, s4};
    

    然后这个

    Pick[l2, EvenQ[l1]]
    

    似乎可以满足您的迫切要求。在其他情况下,Position 也可能有用。

    哦,你可能想知道https://mathematica.stackexchange.com

    【讨论】:

      【解决方案2】:

      两种方法:

      set1 = {2, 3, 4, 5}
      set2 = {s1, s2, s3, s4}
      Pick[set2, EvenQ /@ set1]
      Extract[set2, Position[set1, _?EvenQ]]
      

      编辑:

      第一种方法与马克的答案基本相同,但他利用了EvenQListable 属性。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-03-03
        • 2015-09-04
        • 2013-12-03
        • 1970-01-01
        相关资源
        最近更新 更多