Double becomes int32 --why??

Asked by ANJ on 18 Jun 2012
Latest activity Commented on by ANJ on 18 Jun 2012

My goal is to write a file that has a column of double precision numbers for each subject. Here's what I have:

    TadvDiff(1,qq) = currsubj; %Heading that displays subject ID number
    TadvDiff(2:(timepoints+1),qq) = TminusC;

currsubj and TminusC are both double-precision. Somehow, TadvDiff is int32.

After looping through each subject, I write TadvDiff to a file:

    dlmwrite('TadvDiffN108.txt',TadvDiff,'delimiter','\t','precision', '%.4f');

which ends up being all 1s and 0s when I need decimals. Why did my doubles become ints, and how can I correct this?

Thanks!

5 Comments

ANJ on 18 Jun 2012

The code that I've shown is the first time I've defined TadvDiff.

Walter Roberson on 18 Jun 2012

Somehow, the very first time you write into TadvDiff, you must be storing int32. That very first write determines the datatype after that.

Can you reasonably pre-allocate your TadvDiff array? e.g.,

TadvDiff = zeros(timepoints+1, 17);

ANJ on 18 Jun 2012

Great, that did the trick! Thanks so much!

ANJ

Products

No products are associated with this question.

0 Answers

Contact us