[英]how to remove a sublist stored in a list in python
我想使用 numpy 数组创建一个列表。 我想导出数组中值的差异以及该数组的第一个值:
my_array=np.array([1, 4, 10])
首先,我找出差异:
differs=np.diff(my_array)
它给了我:
array([3, 6])
但我想拥有:
[1, 3, 6]
我尝试了以下方法:
sep=[my_array[0], np.diff(my_array)]
但它给了我:
[1, array([3, 6])]
我还尝试将数组转换为列表,但我又有一个子列表,我不知道如何只将该子列表的数字复制到我的主列表中。 为此,我尝试了:
sep=[my_array[0], [i for i in np.diff(my_array)]]
它给了我:
[1, [3, 6]]
在此之前,我非常感谢任何帮助。
我会通过在喂给numpy.diff
之前添加0
来做到这一点,即:
import numpy as np
my_array=np.array([1, 4, 10])
differs=np.diff(np.hstack(([0],my_array)))
print(differs)
output:
[1 3 6]
请注意,这仅基于您的单个输入所需的 output 对,因此请针对您可能遇到的其他情况进行测试,并写下它是否符合您的要求,如果不是实际的 output 和所需的 Z78E6221F6393F14CEZDZ666。
尝试:
sep=[my_array[0], *np.diff(my_array)]
[1, 3, 6]
numpy.diff
有一个参数:
my_array=np.array([1, 4, 10])
res = np.diff(my_array,prepend=0)
output:
[1 3 6]
你在正确的轨道上,你只需要添加prepend参数来分配起始值:
np.diff(my_array, prepend=0)
array([1, 3, 6])
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.