removing NaN values from my codes
1 view (last 30 days)
Show older comments
Hi, I have these codes:
result=zeros(1,12) avedata=mean(turkeyreturn); vardata=var(turkeyreturn); N=length(turkeyreturn); for h=1:14;
A=TRBB(:,h);
BB=[A turkeyreturn A.*turkeyreturn ];
% FF=BB(0== sum(isnan(BB), 2), :);
%R(:,h)=BB((100:end),2);
y1=0;y2=0; z1=length(find(A==1)); z2=length(find(A==-1));
for k=1:length(BB) if BB(k,1)==1 y1=BB(k,3)+y1; elseif BB(k,1)==-1 y2=BB(k,2)+y2; end end
for n=length(BB)
% BB=BB(0== sum(isnan(BB), 2), :); BB=BB(isfinite(BB(:, 1)), :) column=(BB(1:end,2)) summ= sum(BB(1:end,2)) av=summ/n annualav=av*256 standard=std(column) sharpe=((annualav-rf)/standard) end
aveofones=y1/z1; aveofmione=y2/z2; buy_sell=(aveofones-aveofmione);
T_one=(aveofones-avedata)/(sqrt((vardata/N)+(vardata/z1))); T_min1=(aveofmione-avedata)/(sqrt((vardata/N)+(vardata/z2))); T_both=(aveofones-aveofmione)/(sqrt((vardata/z1)+(vardata/z1)));
% R(:,h)=FF(:,3); result(h,:)=[z1,z2,aveofones,aveofmione,buy_sell,T_one,T_min1,T_both,av,annualav, standard,sharpe]
end
how do I save the the second col um BB matrix so that I can get all the results in for loap. additionally there are some NaN values in the third column. how can I remove these row with matching cell in the first and second column please from BB matrix and save them after all.The number of NaN is different in each loap.
thanks jean
5 Comments
Answers (1)
Andreas Goser
on 17 Jan 2014
Without being able to understand your code and assuming you want to remove nans from the data and not your code, here is an example:
a=[1 2 nan 4 5]
x=isnan(a)
a=a(~x)
3 Comments
See Also
Categories
Find more on Linear Algebra in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!