【发布时间】:2021-11-28 18:47:25
【问题描述】:
来自以下 NumPy 数组:
[5, 2, 4, 6, 3]
我想得到以下矩阵:
[
[0, 0, 0, 0, 0, 1, 0],
[0, 0, 1, 0, 0, 0, 0],
[0, 0, 0, 0, 1, 0, 0],
[0, 0, 0, 0, 0, 0, 1],
[0, 0, 0, 1, 0, 0, 0]
]
使用 Pandas get_dummies 看起来很简单:
pd.get_dummies(original_array).values
但它有一个缺点,即缺失的索引在最终矩阵中不表示为列(例如,本例中的 0、1)。
如果我们假设预先知道所需“列”的确切名称/索引(这里包括从 0 到 6 的所有整数),那么获取上述矩阵的最有效方法是什么,从从初始数组?
【问题讨论】:
-
@Ch3steR 确实如此——请随意参考。我没有找到它,因为标题不是很容易搜索。
标签: python pandas numpy one-hot-encoding