Python 带字符串的np.where和list问题

Python 带字符串的np.where和list问题,python,string,list,numpy,if-statement,Python,String,List,Numpy,If Statement,我有3个列表,其中一个是: x_axis = ["01-01", "01-02", "01-03"] x_轴列表的长度为377 我还有一份清单: y_axis = ["01-01","01-03","01-05"] 等。y_列表的长度为167 第三个列表对应于具有特定编号的列表x_轴,其中: hour24 = ["50","0",&

我有3个列表,其中一个是:

x_axis = ["01-01", "01-02", "01-03"] 
x_轴列表的长度为377

我还有一份清单:

y_axis = ["01-01","01-03","01-05"]
等。y_列表的长度为167

第三个列表对应于具有特定编号的列表x_轴,其中:

hour24 = ["50","0","99"]
等。24小时的长度与x_轴相同,x_轴上的日期与24小时的数字相对应

我想做的是从hour24列表中提取数字,它与y_轴上的日期相对应。这意味着并不是所有的日期都包括在内。我想要一个新的_hour24列表,其中包含与y轴中的日期相同的特定数字。这里的问题是x轴列表包括所有日期,而y轴列表只包括一些选定的日期

我想做的是:

我尝试用零扩展y_轴列表,以包含与x_轴相同的长度:

for i in range(210):
        y_axis.append("0")
有了相同的长度后,我尝试使用if/else和np.where numpy作为:

new_hour24 = []

for i in range(0, len(x_axis)):
        if(np.where((x_axis[i]==y_axis[i]))):
             new_hour24.append(hour24[i])
        else:
             continue
然而,由于某些原因,这不起作用,我的新列表new_hour24包含所有原始值,就像它跳过了np.where事实一样,只是附加了所有值

有人知道我该怎么解决这个问题吗

编辑

预期输出是长度为167的新的_hour24列表。列表new_hour24中的数字与y_列表中的日期相对应。

您可以使用

输出:

['50' '99']
你可以用

输出:

['50' '99']

你能发布预期的输出吗?我在最后加了一句话。不知道如何解释它。这是您发布的示例的输出吗?
['50','99']
?是的,这些应该是前两个输出。您可以发布预期的输出吗?我在最后添加了一句额外的话。不知道如何以其他方式解释这是您发布的示例的输出吗
['50','99']
?是的,这些应该是前两个输出。我尝试了,然后收到:TypeError:只有整数标量数组可以转换为标量索引。我忘了提到x_列表不仅仅是数字,列表中的一些地方还写着“MM.DD”。而y_列表只是数字。我不知道这是否是问题所在将
hour24
转换为numpy数组
hour24=np.array(hour24)
它会工作得很好,@newtoprogramming。如果上述答案有帮助,请接受它:如果社区的其他成员知道这是解决你问题的方法,这将是有帮助的。我还向帮助过你的成员表示“感谢你的帮助”(有关详细信息,请访问)。我尝试了这一点,然后收到:TypeError:只有整数标量数组才能转换为标量索引。我忘了提到x_列表不仅仅是数字,列表中的一些地方还写着“MM.DD”。而y_列表只是数字。我不知道这是否是问题所在将
hour24
转换为numpy数组
hour24=np.array(hour24)
它会工作得很好,@newtoprogramming。如果上述答案有帮助,请接受它:如果社区的其他成员知道这是解决你问题的方法,这将是有帮助的。我还代表“感谢您的帮助”向帮助您的会员致意(更多信息,请访问)。