高階程式設計技術,第十二周(已修改第一題的錯誤)

2021-08-20 06:37:46 字數 1983 閱讀 9498

**如下:

import numpy as np

import matplotlib.pyplot as plt

x = np.arange(0, 2.0, 0.02)

y = (np.sin(x - 2)**2 ) * np.exp(-x ** 2) 

plt.plot(x, y)

plt.title("11.1")

plt.xlabel("x")

plt.ylabel("y")

plt.axis([0, 2, 0, 1])

plt.show()

效果圖如下:

注釋:這裡我們認為使用最小二乘得到的多元線性回歸模型中不含常數項,否則x應該為20*11,首項均為1的矩陣才對

**如下:

import matplotlib.pyplot as plt

import numpy as np

x = np.random.randint(-5,5,200).reshape(20,10)

b = np.random.randint(-2,2,10).reshape(10,1)

z = np.random.normal(size = (20,1))

y = np.dot(x,b)+z

estib = np.linalg.lstsq(x, y,none)[0]

t = np.arange(0,10,1)

plt.scatter(t,b,c = 'r',marker = 'x')

plt.scatter(t,estib,c = 'b')

plt.legend(['true coefficients','estimated coefficients'])

plt.xlim(0,9)

plt.ylim(-2.2,2.2)

plt.hlines(0,0,9,linestyles = 'dashed')

plt.show()

結果如下:

**如下:

import matplotlib.pyplot as plt

import numpy as np

from scipy import stats

z = np.random.randn(10000)

gkde = stats.gaussian_kde(z)

ind = np.linspace(4,-4,100)

kdepf = gkde.evaluate(ind)

plt.hist(z,bins=25,normed = 1,color = 'b',edgecolor = 'k')

plt.plot(ind,kdepf,label='kde',color='r')

plt.xlabel('value')

plt.ylabel('frequency')

plt.title('11.3')

plt.show()

效果圖:

高階程式設計技術 第十二周作業

本週講了matplotlib,乙個用於繪製影象的庫。要求用numpy和matplotlib來完成三道練習題。在區間 0,2 上繪製函式f x sin 2 x 2 e x 2 要求加上軸標籤和標題。matplotlib的畫圖用法跟matlib基本一樣,因此只需要按照matlib的步驟來繪製影象即可。由...

高階程式設計技術,第一周

1.瀏覽python首頁的收穫 2.成為python程式設計高手以後,你打算實現什麼程式 python的一大應用就是能夠方便地編寫爬蟲程式,而在這個資訊 的時代能夠方便地獲取想要的資訊是人們所需要的,所以假如我成為了python程式設計高手,我想實現乙個能整合自己所有關注的自 更新內容的程式,隱藏在...

高階程式設計技術 第十三周作業

本週需要學習如何使用scipy。scipy中包含了許多跟numpy一樣的函式,因此使用起來會有許多相似之處。exercise 10.1 least squares 生成乙個m行n列的矩陣,並要求m n。同時生成乙個m維向量。求解x arg minx ax b 2.該題可以使用lstsq來求解,sci...