我目前有一个包含不同概率的6x3矩阵.
在这种情况下,我的行有3个值,对应于我的样本最终属于某个类的概率.
我想要做的是为我的6个样本获得3个不同类别中的每一个.我担心我最终可能会重复一遍.
我注意到每个元素都lista包含6个值.有没有一种简单的方法可以摆脱可能的重复?
for combination in itertools.product(*probability):
q1 = np.prod((combination))
lista.append(q1)
print(combination)
i = i+1
print(i)
print(np.sum(lista))
Run Code Online (Sandbox Code Playgroud)
提前致谢!
使用set(lista)将删除任何重复的值
例:
lista = [1,2,3,4,1,2]
new_list = set(lista)
print(new_list)
Run Code Online (Sandbox Code Playgroud)
输出:
{1, 2, 3, 4}
Run Code Online (Sandbox Code Playgroud)
编辑:根据您的评论,使用itertools和groupby()删除列表中的重复列表;
import itertools
lista = [[1,2,3], [1,2,3], [3,4,5]]
new_list = list(k for k,_ in itertools.groupby(lista))
print(new_list)
Run Code Online (Sandbox Code Playgroud)
输出:
[[1, 2, 3], [3, 4, 5]]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
69 次 |
| 最近记录: |