Multiplying an entire table by a column from another table.

69 ビュー (過去 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!

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

カテゴリ

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!

Translated by