您的位置:首页 > 编程语言 > Python开发

Python3 安装 numpy 科学库 简单线性回归

2018-01-11 16:38 531 查看
[root@Singapore numpy]# wget https://pypi.python.org/packages/ee/66/7c2690141c520db08b6a6f852fa768f421b0b50683b7bbcd88ef51f33170/numpy-1.14.0.zip [root@Singapore numpy]# md5sum numpy-1.14.0.zip
c12d4bf380ac925fcdc8a59ada6c3298  numpy-1.14.0.zip
[root@Singapore numpy]# unzip numpy-1.14.0.zip
[root@Singapore numpy]# cd numpy-1.14.0
[root@Singapore numpy-1.14.0]# cat INSTALL.rst.txt                                          #安装说明
[root@Singapore numpy-1.14.0]# python3  setup.py build install --prefix /root/python/numpy  #注意安装路径
[root@Singapore numpy-1.14.0]# echo "export PYTHONPATH=/root/python/numpy/lib/python3.6/site-packages" >> ~/.bashrc  #注意安装路径
[root@Singapore numpy-1.14.0]# . ~/.bashrc
[root@Singapore numpy-1.14.0]# echo $?
0
[root@Singapore numpy-1.14.0]#

写一个线性回归 试一试

[root@Singapore work.dir]# cat SimpleLineRegression.py
#!/usr/bin/python3

import numpy as np

def fitSLR(x,y):
n = len(x)
dinominator = 0
numerator = 0
for i in range(0, n):
numerator += (x[i] - np.mean(x)) * (y[i] - np.mean(y))
dinominator +=(x[i] - np.mean(x)) ** 2

print ("numerator:", numerator)
print ("dinominator", dinominator)
b1 = numerator/float(dinominator)
b0 = np.mean(y)/float(np.mean(x))

return b0, b1

def predict(x, b0, b1):
return b0 + x*b1

x = [1,3,2,1,3]
y = [14,24,18,17,27]

b0, b1 = fitSLR(x,y)
print ("intercept:", b0, " slope:", b1)

x_test = 6
y_test = predict(6, b0, b1)
print("y_test", y_test)

[root@Singapore work.dir]# ./SimpleLineRegression.py
numerator: 20.0
dinominator 4.0
intercept: 10.0  slope: 5.0
y_test 40.0
[root@Singapore work.dir]#
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Python3 numpy 科学库