我创建了一个包含 10 个元素的 numpy 一维数组,每个元素 =“low” 我将一个元素更改为“high”,仅插入“hig”。 显然,每个元素限制为 3 个字符。 我想创建数组而不限制每个元素中的字符数。
在下面的代码中,第一个 X 返回: 数组(['低', '低', '低', '低', .... 替换索引 2 处的元素后,X 返回: 数组(['低', '低', '高', '低', .... 我希望第二个 X 返回: 数组(['低', '低', '高', '低', ....
import numpy as np
X = np.array(["low"]*10)
X #This returns array(['low', 'low', 'low', 'low', ...
X[2] = 'high'
X #This returns array(['low', 'low', 'hig', 'low',...
好吧,在这里找到了解释https://note.nkmk.me/en/python-numpy-dtype-astype/向下滚动到“字符串中的字符数”
numpy 创建数组,其中元素中允许的最大字符数 = 最长元素。 在我的例子中,这是 3。这就是 dtype='
import numpy as np
X = np.array(["low"]*10, dtype = 'U4')
X
返回: 数组(['低', '低', '高', '低', ...])