Python 优化向量创建
我有一个1.000.000行的矩阵,我一行一行地读取,并希望在特定列的每个元素上运行一个函数。相关列中的元素是介于1和1115之间的整数。功能如下:Python 优化向量创建,python,optimization,vector,Python,Optimization,Vector,我有一个1.000.000行的矩阵,我一行一行地读取,并希望在特定列的每个元素上运行一个函数。相关列中的元素是介于1和1115之间的整数。功能如下: def vectorized_id(j): """Return a 1115-dimensional unit vector with a 1.0 in the j-1'th position and zeroes elsewhere. """ j = j - 1 e = [0] * 1115
def vectorized_id(j):
"""Return a 1115-dimensional unit vector with a 1.0 in the j-1'th position
and zeroes elsewhere.
"""
j = j - 1
e = [0] * 1115
e[j] = 1.0
return e
问题是它很慢,如果可能的话,我想通过优化它来节省时间。它能做得更快吗?您可以尝试在线执行此操作—消除函数调用的开销,并摆脱j=j-1—只需考虑使用某种稀疏数据结构即可,例如-