[英]How can I slice a list to get every 2 consecutive elements of the list in new lists?
假设你有一个清单[1,2,3,...,99,100]
import numpy as np
ls = np.linspace(1,100,100)
假设您使用切片表示法来找到适合您的符号。
print(ls[:2])
>> [ 1. 2.]
print(ls[::2])
>> [ 1. 3. 5. 7. ... 97. 99.]
如何以我能得到的方式对数据进行切片
[1,2],[3,4],[5,6],[7,8],...,[99,100]
##
可能并不重要,但我的目的是使其适应我的数据集,其中列表中的值表示要比较的另一个值列表(other_values [index])的数字下标。 是否可以将切片与数组相结合?
您可以使用.resize(..,2)
选项。 结果是ls
现在是一个具有50×2维度的numpy数组:
>>> ls.resize(ls.shape[0]/2,2)
>>> ls
array([[ 1., 2.],
[ 3., 4.],
[ 5., 6.],
[ 7., 8.],
[ 9., 10.],
[ 11., 12.],
[ 13., 14.],
[ 15., 16.],
[ 17., 18.],
[ 19., 20.],
[ 21., 22.],
[ 23., 24.],
[ 25., 26.],
[ 27., 28.],
[ 29., 30.],
[ 31., 32.],
[ 33., 34.],
[ 35., 36.],
[ 37., 38.],
[ 39., 40.],
[ 41., 42.],
[ 43., 44.],
[ 45., 46.],
[ 47., 48.],
[ 49., 50.],
[ 51., 52.],
[ 53., 54.],
[ 55., 56.],
[ 57., 58.],
[ 59., 60.],
[ 61., 62.],
[ 63., 64.],
[ 65., 66.],
[ 67., 68.],
[ 69., 70.],
[ 71., 72.],
[ 73., 74.],
[ 75., 76.],
[ 77., 78.],
[ 79., 80.],
[ 81., 82.],
[ 83., 84.],
[ 85., 86.],
[ 87., 88.],
[ 89., 90.],
[ 91., 92.],
[ 93., 94.],
[ 95., 96.],
[ 97., 98.],
[ 99., 100.]])
就像是
list(zip(l[::2], l[1::2]))
返回具有所需配对的元组列表
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.