如何在Python中包含numpy数组的前几个元素
我有一个数组d,我想要一个数组d2。这个数组的每一行里面的元素数量不一样。
d= [ ['q', 'u', 's', 'a', 'p', 'e', 'a']
['500', 'G', 'G', 'C', 'C', 'P', '04/12/2011', '' ]
['500', 'G', 'G', 'F', 'C', 'P', '04/12/2011', '']
['5', 'ZUMZ', 'ZUMZ', 'C', 'C', 'B', '04/12/2011', '']
['2', 'ZUMZ', 'ZUMZ', 'F', 'C', 'B', '04/12/2011', '']
['7', 'ZUMZ', 'ZUMZ', 'M', 'C', 'B', '04/12/2011', '']]
我只想要前五个元素。
d2= [ ['q', 'u', 's', 'a', 'p']
['500', 'G', 'G', 'C', 'C']
['500', 'G', 'G', 'F', 'C']
['5', 'ZUMZ', 'ZUMZ', 'C', 'C']
['2', 'ZUMZ', 'ZUMZ', 'F', 'C']
['7', 'ZUMZ', 'ZUMZ', 'M', 'C']]
f = urllib.urlopen(url)
f = csv.reader(f)
d= np.asarray(list(f), dtype= 'object')
print d
m= d[:,:]
print m
我试过上面的写法,m = d[:,0:5]
1 个回答
1
这样写怎么样:
m = np.array([x[:5] for x in d], dtype=object)
不过如果它们都是字符串的话,应该用字符串类型来代替。