【发布时间】:2026-01-24 14:15:01
【问题描述】:
我是 python 新手,我需要将 number(0,1,2,3) 列表转换为二维数组。基本上,它们都有相同的行号,但是一维列表中的值表示它是二维数组中的列号。 2D 列表中的值用 1 标记。例如,示例 1D 列表
list_1d = [1,0,3,2,0]
1
0
3
2
0
我需要把它转换成,
0 1 0 0
1 0 0 0
0 0 1 0
0 1 0 0
1 0 0 0
我创建了一个 2D 零数组,
array_2d = np.zeros((len(list_1d),4))
非常感谢。
【问题讨论】:
-
也许我遗漏了一些东西,但看起来 1 和 2 导致
array_2d中的同一行,而 0 导致该行中没有 1,这与您的描述不符。 -
什么情况下第一列会出现1?
-
array_2d[:][list_1d] = 1但是,它用 1 标记前 4 行和列 -
@ScottHunter 道歉,我已经更正了描述
-
1 & 2 still 导致
array_2d中的同一行。
标签: python arrays list numpy transform