我有一个pySpark DataFrame,其列是稀疏向量。我正在尝试将稀疏矢量的第六个位置随机替换为一个随机的。
例如,如果我必须使用列表执行此操作
import numpy as np
dummy = [10, 11, 12, 13, 14, 15, 16, 17, 18]
col_to_swap = 6
value = dummy[col_to_swap]
del dummy[col_to_swap]
dummy.insert(np.random.randint(0, len(dummy)), value)
print(dummy)
但是我不太确定如何使用稀疏阵列。例如,如果我有这个稀疏向量
SparseVector(5, {1: 2.0, 3: 6.0, 4: 7.0})
第1列的随机交换看起来像
SparseVector(5, {1: 7.0, 3: 6.0, 4: 2.0})