Interpolate big array to match length of smaller array?
18 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
I am trying to do some array math, but my arrays are different sizes. I tried to interpolate the larger array, tau, (13795 x 1) to match the length of the smaller one, rho, (105 x 1). Neither data set is linear. I tried to do 1D interpolation with interp1(...) function but got the following error: "error using GriddedInterpolant The grid vectors do not define a grid of points that match the given values"
My end goal is to get the longer tau array to be (105 x 1).
6 comentarios
jonas
el 25 de Sept. de 2018
Measured over what? Over time? Over a geometry? Why are they different size?
Respuestas (1)
jonas
el 25 de Sept. de 2018
Editada: jonas
el 25 de Sept. de 2018
You need an x vector for interp.
tau_new=interp1(X_tau,tau, X_rho)
tau_new is the interpolated vector
2 comentarios
jonas
el 25 de Sept. de 2018
Editada: jonas
el 25 de Sept. de 2018
Can you upload and describe the data? You said you got the data from a table. What does the row number of the table represent? Is there a time associated with the values or perhaps a geometry? rho and tau must surely be functions of something right? Unless of course they are repeated measurements to get a measure of their distributions. In this case it is however senseless to interpolate.
Anyway, I am not supposed to figure it out.
Ver también
Categorías
Más información sobre Resizing and Reshaping Matrices en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!