,可以通过以下步骤实现:
import numpy as np
arr = np.zeros((n, m))
,其中n表示行数,m表示列数。indices = np.array([index1, index2, ...])
,其中index1、index2等表示列索引。expanded_indices = np.expand_dims(indices, axis=0)
。arr[np.arange(n), expanded_indices] = 1
。完整的代码示例如下:
import numpy as np
def set_specific_indices_to_1(n, m, indices):
arr = np.zeros((n, m))
expanded_indices = np.expand_dims(indices, axis=0)
arr[np.arange(n), expanded_indices] = 1
return arr
# 示例用法
n = 5 # 行数
m = 4 # 列数
indices = np.array([1, 3, 0, 2, 1]) # 指定的列索引
result = set_specific_indices_to_1(n, m, indices)
print(result)
这段代码将创建一个5行4列的全零numpy数组,并将每一行中指定索引处的元素设置为1。输出结果如下:
[[0. 1. 0. 0.]
[0. 0. 0. 1.]
[1. 0. 0. 0.]
[0. 0. 1. 0.]
[0. 1. 0. 0.]]
这个功能在机器学习中常用于独热编码(One-Hot Encoding)等操作,可以将离散特征转换为二进制向量表示。在腾讯云的产品中,可以使用腾讯云的AI开放平台(https://cloud.tencent.com/product/ai)提供的人工智能服务来进行相关的数据处理和分析。
领取专属 10元无门槛券
手把手带您无忧上云