Uso de ipython para el modelado de un sistema a partir de los datos obtenidos en un ensayo.
In [14]:
#Importamos las librerías utilizadas
import numpy as np
import pandas as pd
import seaborn as sns
In [15]:
#Mostramos las versiones usadas de cada librerías
print ("Numpy v{}".format(np.__version__))
print ("Pandas v{}".format(pd.__version__))
print ("Seaborn v{}".format(sns.__version__))
In [16]:
#Abrimos el fichero csv con los datos de la muestra
datos = pd.read_csv('prueba1.csv')
In [17]:
#datos_filtrados = datos[(datos['Diametro X'] >= 1.2) & (datos['Diametro Y'] >= 1.2)]
In [18]:
%pylab inline
In [19]:
#Mostramos un resumen de los datos obtenidoss
datos.describe()
#datos.describe().loc['mean',['Diametro X [mm]', 'Diametro Y [mm]']]
Out[19]:
In [20]:
#Almacenamos en una lista las columnas del fichero con las que vamos a trabajar
#columns = ['Diametro X', 'Diametro Y', 'RPM TRAC']
columns = ['Diametro X', 'RPM TRAC']
In [21]:
#Mostramos en varias gráficas la información obtenida tras el ensayo
datos[columns].plot(secondary_y=['RPM TRAC'],figsize=(10,10))
#datos_filtrados['RPM TRAC'].plot(secondary_y=True,style='g',figsize=(20,20)).set_ylabel=('RPM')
Out[21]:
In [24]:
# Buscamos el polinomio de orden 4 que determina la distribución de los datos
reg = np.polyfit(datos['time'],datos['Diametro X'],9)
# Calculamos los valores de y con la regresión
ry = np.polyval(reg,datos['time'])
#print ('P(x)= {} {}*X {}*X^2'.format(reg[0],reg[1],reg[2]) )
In [25]:
plt.plot(datos['time'],datos['Diametro X'],'b^', label=('f(x)'))
plt.plot(datos['time'],ry,'ro', label=('regression'))
plt.legend(loc=0)
plt.grid(True)
plt.xlabel('x')
plt.ylabel('f(x)')
Out[25]:
In [ ]: