擅长:python、mysql、java
<p>处理此类数据的一个好方法是将其放入NumPy数组中。执行筛选的一种方法是仅使用完整数组的第一行初始化列表,然后迭代完整数组的其他行,将每个行与新列表的最后一个元素进行比较,如果其所有元素都较小,则将其添加到新列表中:</p>
<pre class="lang-py prettyprint-override"><code>import numpy as np
list_of_strings = ['6:3:5:6.5:5:2.5', # data slightly changed for testing
'6:3:5:5.5:5:3.5',
'6:2.5:5:5:4:2',
'6:2.5:5.5:5.5:4.5:3.5',
'5.5:1:1:1:1:0.5']
numbers = np.array([s.split(':') for s in list_of_strings],
dtype=float)
numbers_descending = [numbers[0]]
for row in numbers[1:]:
if all(row <= numbers_descending[-1]):
numbers_descending.append(row)
numbers_descending = np.array(numbers_descending)
numbers_descending
</code></pre>
<pre><code>array([[6. , 3. , 5. , 6.5, 5. , 2.5],
[6. , 2.5, 5. , 5. , 4. , 2. ],
[5.5, 1. , 1. , 1. , 1. , 0.5]])
</code></pre>