read specific data from excel and create a vector ?

1 回表示 (過去 30 日間)
MUKESH KUMAR
MUKESH KUMAR 2017 年 7 月 31 日
編集済み: MUKESH KUMAR 2017 年 7 月 31 日
I have attached excel file
and to create a row vector 1*24 like
A1=[0 0 0 0 2.2 2.2 2.2 2.2 2.2 2.2 2.2 2.2 2.2 2.2 2.2 0 0 0 0 0 0 0 0 0];
A2=[0 0 0 0 0 0 0 0 0 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 0 0 0 0];

採用された回答

KSSV
KSSV 2017 年 7 月 31 日
編集済み: KSSV 2017 年 7 月 31 日
[num,txt,raw] = xlsread('app.xls') ;
A1 = zeros(1,24) ;
A1(num(1,2):num(1,3)) = num(1,1) ;
A2 = zeros(1,24) ;
A2(num(2,2):num(2,3)) = num(2,1) ;
  2 件のコメント
Walter Roberson
Walter Roberson 2017 年 7 月 31 日
The
clc; clear al ;
do not appear to be doing any useful work there ?
MUKESH KUMAR
MUKESH KUMAR 2017 年 7 月 31 日
編集済み: MUKESH KUMAR 2017 年 7 月 31 日
thanks for solution if we have more than two rows like for 10 rows in excel then how can we use 'for loop' for it? I tried this A1 is B1{1} and A2 is B1{2} for two rows: [num,txt,raw] = xlsread('app.xls') ; for u = 1:2 for v = 1:2; B1{u}=zeros(1,24); B1{u}(num(v,2):num(v,3))= num(v,1); end end

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

その他の回答 (1 件)

Walter Roberson
Walter Roberson 2017 年 7 月 31 日
(This code is not tested)
[num, txt] = xlsread('app.xls');
nrow = size(num, 1);
use_cell = cell(nrow, 2);
for K = 1 : nrow
this_entry = zeros(1,24);
this_entry( num(K,2) : num(K,3)) = num(K,1);
use_cell{K,1} = txt{K,1};
use_cell{K,2} = this_entry;
end
use_struct = cell2struct(use_cell(:,1), use_cell(:,2));
Now there will be use_struct.a1 and use_struct.a2

カテゴリ

Help Center および File ExchangeSpreadsheets についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by