在numpy ndarray中找到列表的长度

时间:2015-12-11 06:22:45

标签: python arrays numpy

我有一个形状为arr

的numpy数组(100,)
  arr.shape()  #(100,)

这个数组中有100个列表。列表是字符串,没有空格,大约30长。

'TBTBBBBBBBBBEBEBEBEBDLKDJFDFIKKKKK'

这个数组有一个" matrix-esque"形状。我怎么能(a)告诉这个数组中每个列表的长度,或者(b)重新格式化这个数组,以便arr.shape()给我两个维度,即arr.shape()给出(100,30)?

此外,可能不是每个列表的长度相同(有些可能是28,而不是30):

如何检查此行为?在这种情况下numpy.shape()会输出什么?

1 个答案:

答案 0 :(得分:2)

您可以使用列表推导来确定数组中每个字符串的长度:

arr = np.array(['aasdfads', 'asfdads', 'fdfsdfaf'])
>>> [len(i) for i in arr]
[8, 7, 8]

或采取最大值:

>>> max([len(i) for i in arr])
8