MATLAB Answers

Multiplying an entire table by a column from another table.

103 ビュー (過去 30 日間)
Craig Stevens
Craig Stevens 2020 年 3 月 10 日
コメント済み: Star Strider 2020 年 3 月 10 日
I want to take my a table of "data" and multiply it by a specific column from another table to result in "processed data". I have tried different multipication functions but I am always given the error "Undefined operator '.*' for input arguments of type 'table'." Is there a specific function that I am unaware of? I am running Matlab R2019a. Thank you.

採用された回答

Star Strider
Star Strider 2020 年 3 月 10 日
Use the varfun function.
Example —
T = array2table(randi(99, 7, 5));
V = randi(99, 7, 1);
TV = varfun(@(x)x.*V, T);
  2 件のコメント
Star Strider
Star Strider 2020 年 3 月 10 日
As always, my pleasure!

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

その他の回答 (1 件)

Bhaskar R
Bhaskar R 2020 年 3 月 10 日
t1 = table;
t2 = table;
% table t1
t1.a = rand(10,1);
t1.b = rand(10,1);
% table t2
t2.c = rand(10, 1);
%processed_data
processed_data = t1.a.*t2.c;
% or if you want to embed in table
t1.processed_data = t1.a.*t2.c;
  1 件のコメント
Craig Stevens
Craig Stevens 2020 年 3 月 10 日
Thank you!

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

Community Treasure Hunt

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

Start Hunting!

Translated by