I have a large set of data that I need to linearly interpolate evenly by a factor of 22. The way that the data is organised means that the each row of data needs to be interpolated instead of each column, how do I make it so that rows of data are interpolated instead of columns?

 채택된 답변

Natalie
Natalie 2013년 10월 18일

0 개 추천

Sat down with someone and worked it out together:
num_rows = length(a); num_columns = 22;
b = zeros(num_rows,num_columns); c = zeros(num_rows,num_columns);
for i = 1:num_rows
count = a(i,13);
int_c(i,:) = (0:1/(num_columns - 1):1)*c(i,count);
int_b(i,:) = interp1(b(i,1:count), b(i,1:count), new_thick(i,:),'spline');
end
end

추가 답변 (2개)

Walter Roberson
Walter Roberson 2013년 10월 15일

0 개 추천

newV = interp1(X, V.', newX) .';

댓글 수: 1

Natalie
Natalie 2013년 10월 16일
Sorry, forgot to mention that there are a bunch of Nan values so this doesn't work

댓글을 달려면 로그인하십시오.

Youssef  Khmou
Youssef Khmou 2013년 10월 15일

0 개 추천

large data means down sampling?
If it is the other case, you can interpolate row by row as in this example :
r=randn(30);
for n=1:30
G(n,:)=interp(r(n,:),22);
end

댓글 수: 1

Natalie
Natalie 2013년 10월 16일
Sorry what I meant by large data I meant large in size, about 1000 rows and 100 columns. I wish to interpolate the data along the rows not columns, so interpolate the data present in each column of a row. Also I forgot to mention that there is also the problem of a lot of Nan values

댓글을 달려면 로그인하십시오.

카테고리

도움말 센터File Exchange에서 Interpolation에 대해 자세히 알아보기

질문:

2013년 10월 15일

답변:

2013년 10월 18일

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by