Я пытался сделать для l oop, но пока безуспешно. Первая итерация выполняется отлично, но затем выдает ошибку:
IndexError: неверный индекс для скалярной переменной
для строки Ylog=[(data1.Z>a[i])&(data1.Z<a[i+1])]
Я не знаю, откуда это ...
import matplotlib.pyplot as plt
import pandas as pd
from scipy import stats
base=pd.read_csv('pont du gard.csv',sep=';',index_col=0)
data1=pd.read_csv('P1.csv',sep=';',index_col=0)
P1=np.sqrt((base.X['Base']-data1.X)**2+(base.Y['Base']-data1.Y)**2)
a=np.array([77,86.6,95,115,125])
for i in range(5):
Xlog=[(P1)]
Ylog=[(data1.Z>a[i])&(data1.Z<a[i+1])]
logique=np.logical_and(Xlog,Ylog).flatten()
x=P1[logique]
z=data1.Z[logique]
a, b, r_value, p_value, std_err = stats.linregress(x,z)
plt.plot(x,a*x+b)
print('Pendage P1:',np.arctan(a1)*180/np.pi,'°')
print('Erreur de :', 1-np.absolute(r_value))