TD4
Tue Dec 03 2024 23:52:40 GMT+0000 (Coordinated Universal Time)
Saved by @Radhwen_hajri
import numpy as np import matplotlib.pyplot as plt import scipy.stats import math ######EX1 # def u(n): # u0=1/4 # for i in range(1,n+1): # u0=5*u0-1 # print("u(",i,")","=",u0) # return None # u(100) # def v(n): # v0=1/5 # for i in range (1,n+1): # v0=6*v0-1 # print("v(",i,")","=",v0) # return None # v(100) # # ######EX2.1 # def f(x): # return x*math.cos(x) # def integrale(f,a,b,n): # s=0 # for i in range(1,n+1): # s+=((b-a)/n)*f(a+i*((b-a)/n)) # return s # print("integrale = ",integrale(f,0,1,10)) # def integrale_precise(f,a,b,n0,precision): # n=n0 # I=integrale(f,a,b,n) # while True : # n*=2 # I1=integrale(f,a,b,n) # if abs(I-I1)<precision: # break # I=I1 # return I # print("integrale_precise =",integrale_precise(f,0,1,10,10**(-4))) ######EX2.2 # x=np.linspace(-4*math.pi,4*math.pi,200) # y=np.sinc(x) # fig=plt.figure() # plt.plot(x,y,label="y",c="r") # plt.plot(x,y**2,label="y²",c="g") # plt.title("TTTTTT") # plt.legend() # plt.xlabel("x") # plt.ylabel("y") # plt.savefig("fig") # plt.show() #####EX3 # def habenicht(n,theta): # return (1+np.cos(n*theta)+np.sin(n*theta)**2) # theta=np.linspace(0,2*math.pi,200) # r3=habenicht(3,theta) # r5=habenicht(5,theta) # r7=habenicht(7,theta) # fig=plt.figure() # ax=fig.add_subplot(1,1,1,projection="polar") # plt.plot(theta,r3) # plt.plot(theta,r5) # plt.plot(theta,r7) # plt.show() ######EX4 data = np.loadtxt("anscombe.dat",skiprows=1) j1,j2,j3,j4=data[:,0:2],data[:,2:4],data[:,4:6],data[:,6:8] c=0 for i in [j1,j2,j3,j4]: c+=1 print("___JEU.{}____".format(c)) x1=np.mean(i,axis=1) x2=np.std(i,axis=1) r=scipy.stats.pearsonr(i[:,0],i[:,1]) print(f"moyenne: ","x=",f"{x1[0]:.2f}","y=",f"{x1[1]:.2f}") print(f"ecart_type : ", "x=", f"{x2[0]:.2f}", "y=", f"{x2[1]:.2f}") print(f"Coefficient de corrélation : {r.statistic:.2f}") a,b,_,_,_=scipy.stats.linregress(i[:,0],i[:,1]) print(f"régression linéaire","a=", f"{a:.2f}","b=",f"{b:.2f}") fig,axs=plt.subplots(2,2,figsize=(8,8), sharex=True,sharey=True) for i,j in enumerate([j1,j2,j3,j4]): x,y=j.T a,b,_,_,_=scipy.stats.linregress(x,y) xx=np.array([x.min(),x.max()]) axs[i//2,i%2].plot(x,y,ls='none',marker='o') axs[i//2,i%2].plot(xx,a*xx+b) axs[i//2,i%2].set(title="Jeu#{}".format(i+1)) [ax.set(xlabel='x') for ax in axs[1]] [ax.set(ylabel='y') for ax in axs [:,0]] fig.tight_layout() plt.show()
Comments