xlsread converts whole array to logical

2 ビュー (過去 30 日間)
John Williams
John Williams 2016 年 1 月 18 日
回答済み: Rebecca Krosnick 2016 年 1 月 20 日
I recently revisited a MatLab program from about 1 year ago and found that it no longer worked. I found the reason to be that xlsread now converts the whole numeric array to logical if the excel spreadsheet it is reading contains any true/false values. Previously it would have converted the logical values to 0 or 1 and and retained the correct values for the numeric cells. Has the behaviour of xlsread changed, and can I make it behave as it did before? I am currently using MatLab version 2015a. The previous version, with which my program worked, was 2012 a or b.
  1 件のコメント
Walter Roberson
Walter Roberson 2016 年 1 月 18 日
Which operating system are you reading on? In particular are you using MS Windows with Excel installed? If you are, have you tried using 'basic' mode?

サインインしてコメントする。

採用された回答

Rebecca Krosnick
Rebecca Krosnick 2016 年 1 月 20 日
I was able to reproduce this behavior (where the whole numeric array output is actually a logical array) in MATLAB R2015a, but MATLAB R2015b seems to have the original behavior you saw in R2012a/R2012b. You may want to try R2015b if you have access.
In R2015a, a workaround is to use the "raw" output from "xlsread", for example
>> [num,txt,raw] = xlsread('myExample.xlsx');
"raw" is a cell array, but will contain the numeric and logical values you are expecting.

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeIntroduction to Installation and Licensing についてさらに検索

タグ

製品

Community Treasure Hunt

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

Start Hunting!

Translated by