2015-10-15 92 views
0

我有一个从10到80年龄段的数组,没有特定的顺序(称为'年龄')。我需要创建一个仅包含年龄在70岁以上16岁以下的索引的新列表。如何使用旧列表中的项目创建新列表?

重要的是,11-69岁的原始索引将位于新列表中。

如果有人有想法,请尝试与我分享,谢谢大家。

+0

“关键是将年龄** 11 ** - 69的原始指标列入新列表。” - 你可以扩大这个请。对我来说,它直接抵触你以前的陈述“我需要创建一个新的名单,其中只包括**年龄在70岁以下和** 16岁以上**的索引。”。这只是一个错字吗? – Dan

回答

0

您可以使用find函数返回与特定条件匹配的索引。在这种情况下,条件是age > 16 & age < 70,其中age是包含您正在搜索的值的向量。

>> age = randi([10, 80], 10, 1) 
age = 

    21 
    78 
    77 
    44 
    66 
    20 
    39 
    75 
    66 
    78 

>> find(age > 16 & age < 70) 
ans = 

    1 
    4 
    5 
    6 
    7 
    9 

我们可以

>> age(ans) 
ans = 

    21 
    44 
    66 
    20 
    39 
    66 

检查这个,我们看到只有值大于16且小于70人的find返回。

+0

你真的需要使用'find'吗?我认为只是'A =年龄(年龄> 16岁,年龄<70岁)'。 –

+0

@Mikhail_Sam他希望元素的**索引**。所以是的,你必须使用'find'。如果他想要的价值,你的解决方案会很好,但他没有。 – IKavanagh

+0

啊,我现在看到了。 –

相关问题