我有一些二进制2D numpy数组(prediction
)类似于:
[
[1 0 1 0 1 1],
[0 0 1 0 0 1],
[1 1 1 1 1 0],
[1 1 0 0 1 1],
]
2D数组中的每一行都是一个句子作为特定类别的分类,2D数组中的每一列对应于该句子的类别分类。例如,类别(categories
数组)是['A','B','C','D','E','F']
。在
我有另一个2D数组(catIndex
),它包含要在每一行中检查的值的索引,例如
对于上面的4个实例。在
我现在要做的是遍历二进制2D数组,对于为每个句子指定的列索引,检查它是1
还是0
,然后将相应的类别追加到一个新数组(catResult = []
)。如果它是0
,我会将"no_region"
追加到新数组中。在
例如,在句子1中,我查看句子的索引0
,并检查它是0
还是{1
,所以我将'A'
追加到我的新数组中。在第2句中,我查看句子的索引4
,发现它是一个0
,所以我将"no_region"
追加到数组中。在
当前代码:
for index in catIndex:
for i,sentence in enumerate(prediction):
for j,binaryLabel in enumerate(sentence):
if prediction[i][index]==1:
catResult.append(categories[index])
else:
catResult.append("no_region")
制作二维阵列:
列索引,其中
^{pr2}$ind
,行索引为[0,1,2,3]:{cd1>带标签的{cd1}:
使用},等等
where
来确定是使用该映射值,还是使用某个None
。使用object
数据类型可以很容易地将字符串标签替换为其他内容,None
或{按照这些思路,应该可以有效地实现这一点,尽管目前还无法进行测试:
相关问题 更多 >
编程相关推荐