如何解决使用 numpy 以矢量化形式转换 for 循环函数
我试图通过使用 numpy 数组使我的程序更快,但是我一直试图以向量的形式修改 vanilla python,它给了我错误。如何矢量化代码,以便不必使用 for 循环。在下面的 for 循环代码中,我有依赖于要计算的 result.pipe(
map((x) => {
return x.map((y) => this.removeEmptyObjects(y));
})
)
.subscribe((results) => {
console.log(results);
});
值的线性回归和标准偏差公式。>
PC_list
解决方法
这里有一个使用 Python 和 Numpy 的简单线性回归的良好实现:Simple Linear Regression in Python
我建议的第一件事是将原始数据集转换为 numpy 数组。
import numpy as np
X = np.array([457.334015,424.440002,394.795990,408.903992,398.821014,402.152008,435.790985,423.204987,411.574005,404.424988,399.519989,377.181000,375.467010,386.944000,383.614990,375.071991,359.511993,328.865997,320.510010,330.079010,336.187012,352.940002,365.026001,361.562012,362.299011,378.549011,390.414001,400.869995,394.773010,382.556000])
# Calculating mean of the array is made trivial
x_mean = X.mean()
# values of array are squared first and then we get the mean
x_squared_mean = np.power(X,2).mean()
# covariance (b)
cov = np.sum((X - x_mean) * (y - y_mean)) / np.sum(np.power(X - x_mean,2))
# variance (m)
variance = x_mean - (cov * x_mean)
# regression line
reg_line = cov + variance * X
这只是一个示例,但通常第一步是将数据转换为 numpy 数组,然后您可以访问所有在 C 中实现的非循环类型函数。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。