我正在做一个项目,我正在做很多矩阵计算。
我正在寻找一种聪明的方法来加速我的代码。在我的项目中,我正在处理一个大小为 100Mx1M 的稀疏矩阵,其中包含大约 10M 个非零值。下面的例子只是为了说明我的观点。
假设我有:
大小为 (2,3) 的稀疏矩阵 X
v = np.asarray([10, 20])
c = np.asarray([ 2, 3, 4])
data = np.array([1, 1, 1, 1])
row = np.array([0, 0, 1, 1])
col = np.array([1, 2, 0, 2])
X = coo_matrix((data,(row,col)), shape=(2,3))
X.todense()
# matrix([[0, 1, 1],
# [1, 0, 1]])
Run Code Online (Sandbox Code Playgroud)目前我正在做:
result = np.zeros_like(v)
d = scipy.sparse.lil_matrix((v.shape[0], v.shape[0]))
d.setdiag(v)
tmp = d * X
print tmp.todense()
#matrix([[ 0., 10., 10.], …Run Code Online (Sandbox Code Playgroud) 我正在尝试从存储在字典中的Author结构中获取电子邮件值.这里有一些代码,你可以看到,如果我试图从字典中获取它,它就无法正常工作.知道为什么吗?
struct Author{
var name: String
var email: String
}
var dict_author = [String: Author]()
var aut1 = Author(name: "Author1", email: "a1@gmail.com")
dict_author["Author1"] = aut1
var a = dict_author["Author1"]
println(a.email) //not working
println(aut1.email) // a1@gmail.com
Run Code Online (Sandbox Code Playgroud)