# Operator '-' is not supported for operands of type 'table'

3 ビュー (過去 30 日間)
HN 2022 年 7 月 11 日

Hello everyone.
I have been trying to substract arrays. but I get an error message "
Operator '-' is not supported for operands of type 'table'
for
Q_dot{i} = (Q{i}(2:end,:) - Q{i}(1:end-1,:))./(Time{i}(2:end)-Time{i}(1:end-1))';
And part of the code is shown below. How the operator can be modified to handle this problem ? Or how should I modifit the data type ?
Q_dot = cell(1,6);
% table2array(Quat_dot);
Omg = cell(1,6);
for i=1:6
Q_dot{i} = (Q{i}(2:end,:) - Q{i}(1:end-1,:))./(Time{i}(2:end)-Time{i}(1:end-1))';
Omg{i} = zeros(length(Time{i}),3);
for k=1:length(Time{i})-1
% Something
end
end
Many thanks
##### 4 件のコメント表示 3 件の古いコメント非表示 3 件の古いコメント
HN 2022 年 7 月 11 日

That function is just useless @Stephen23. I just forgot to remove it. But I am not sure if this stil affects my question.

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

### 採用された回答

Jonas 2022 年 7 月 11 日
try e.g.
(Quat{i}{2:end,:} - Quat{i}{1:end-1,:})./(Time{i}{2:end}-Time{i}{1:end-1})';
(Quat{i}(2:end,:) - Quat{i}(1:end-1,:))./(Time{i}(2:end)-Time{i}(1:end-1))';

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

### その他の回答 (2 件)

Campion Loong 2022 年 7 月 22 日
If you are using table and addressing one variable at a time, dot subscripting (i.e. t.VarName(...) ) is often preferrable to braces (i.e. t{...} ). For one the code is more readable.
Also for reference, this doc topic has some examples on doing Calculations on Data in Tables.
##### 0 件のコメント表示 -1 件の古いコメント非表示 -1 件の古いコメント

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

Siddharth Bhutiya 2023 年 3 月 30 日

The error message in the original question was about '-' not being supported on table. Starting R2023a, tables now support arithmetic operations so you could do things like the following.
T1 = table([1;3],[2;4]);
T2 = table([1;2],[3;4]);
T = T1 - T2
T = 2×2 table
Var1 Var2 ____ ____ 0 -1 1 0
T = (T1 - T2) ./ 10
T = 2×2 table
Var1 Var2 ____ ____ 0 -0.1 0.1 0

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

### カテゴリ

Find more on Tables 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!