スタック (table 変数)
説明
スタック (table 変数) タスクでは、複数の table 変数または timetable 変数から値を対話的にスタックして 1 つの変数にできます。このタスクは、ライブ スクリプト用の MATLAB® コードを自動生成します。
その他
関連する関数
[スタック (table 変数)] では、関数 stack
を使用するコードが生成されます。
![](stacklet.png)
タスクを開く
スタック (table 変数) タスクを MATLAB エディターでライブ スクリプトに追加するには、次を行います。
[ライブ エディター] タブで [タスク] 、 [スタック (table 変数)] を選択します。
スクリプトのコード ブロック内に、
stack
などの関連キーワードを入力します。コマンドの補完候補から [スタック (table 変数)] を選択します。
例
ライブ エディター タスクを使用したスタック (table 変数)
この例では、スタック (table 変数) ライブ エディター タスクを使用することで変数をスタックする方法を示します。1 つの入力 table の複数の変数から値を取り、それらを出力 table の 1 つの変数に結合します。
まず、米国東海岸のインフルエンザ推定羅患率を含む table を読み込みます。table には北東 (NE
)、中大西洋 (MidAtl
)、および南東 (SE
) の各地域の羅患率をもつ 3 つの変数があります (これらのデータは Google Flu Trends プロジェクトから取得、現在は運用終了)。
load fluByRegion
fluByRegion
fluByRegion=6×4 table
Month NE MidAtl SE
_____________ ______ ______ ______
October-2005 1.1902 1.1865 1.273
November-2005 1.361 1.412 1.582
December-2005 1.5003 1.6043 1.8625
January-2006 1.7772 1.883 1.954
February-2006 2.135 2.1227 2.4803
March-2006 2.2345 1.992 2.0203
変数 NE
、MidAtl
、および SE
からのインフルエンザ羅患率が出力 table の 1 つの変数になるように、インフルエンザ羅患率をスタックします。
スタック (table 変数) タスクをライブ スクリプトに追加します。
変数
Month
からの値を出力 table の行にコピーするには、タスクで変数の上のドロップダウン リストからConstant
を選択変数
NE
、MidAtl
、およびSE
からの値を出力の 1 つの変数にスタックすることで結合するには、各変数についてStack
を選択
出力にスタックされた変数の名前は、各入力変数名を結合したものになります。
タスクは NE_MidAtl_SE_Indicator
という名前の新しい変数に入力変数の名前もスタックします。この例では、地域の名前が入力 table の変数の名前です。これらの名前は、インフルエンザ羅患率の地域を示す新しい変数のデータ値になります。
stackedTable=18×3 table
Month NE_MidAtl_SE_Indicator NE_MidAtl_SE
_____________ ______________________ ____________
October-2005 NE 1.1902
October-2005 MidAtl 1.1865
October-2005 SE 1.273
November-2005 NE 1.361
November-2005 MidAtl 1.412
November-2005 SE 1.582
December-2005 NE 1.5003
December-2005 MidAtl 1.6043
December-2005 SE 1.8625
January-2006 NE 1.7772
January-2006 MidAtl 1.883
January-2006 SE 1.954
February-2006 NE 2.135
February-2006 MidAtl 2.1227
February-2006 SE 2.4803
March-2006 NE 2.2345
⋮
出力 table の変数には、より意味のある名前を付けてください。table 変数の名前を変更するには、関数 renamevars
を使用します。
fluRate = renamevars(stackedTable, ... ["NE_MidAtl_SE_Indicator","NE_MidAtl_SE"], ... ["Region","Flu Rate"])
fluRate=18×3 table
Month Region Flu Rate
_____________ ______ ________
October-2005 NE 1.1902
October-2005 MidAtl 1.1865
October-2005 SE 1.273
November-2005 NE 1.361
November-2005 MidAtl 1.412
November-2005 SE 1.582
December-2005 NE 1.5003
December-2005 MidAtl 1.6043
December-2005 SE 1.8625
January-2006 NE 1.7772
January-2006 MidAtl 1.883
January-2006 SE 1.954
February-2006 NE 2.135
February-2006 MidAtl 2.1227
February-2006 SE 2.4803
March-2006 NE 2.2345
⋮
関連する例
パラメーター
入力 table
— table または timetable の名前
ドロップダウン リストの項目
ワークスペース内のすべての空でない table と timetable のリストから、入力 table または入力 timetable の名前を指定します。
スタックする変数
— 入力変数のアクション
ドロップダウン リストの項目
入力 table または入力 timetable の各変数について行うアクションを指定します。変数のスタック時には、次の 3 つの可能なアクションがあります。
定数 — 出力 table または出力 timetable に変数をコピーします。出力の行で必要とされる箇所に値を複製します。
スタック — 変数の値を出力の 1 つの変数にスタックします。たとえば、3 つの変数をスタックするよう選択する場合、それらすべての値が出力の 1 つの変数にスタックされます。
破棄 — 変数およびその値を出力から除外します。
バージョン履歴
R2020a で導入R2022a: 入力に 100 万個を超える要素がある場合、ライブ エディター タスクは自動実行されない
入力に 100 万個を超える要素がある場合、このライブ エディター タスクは自動実行されません。以前のリリースでは、入力がどのようなサイズでもタスクは必ず自動実行されていました。入力の要素が多い場合、このタスクで生成されたコードは実行にかなりの時間 (数秒間以上) を要することがあります。
タスクが自動的に実行されない場合、自動実行インジケーターが無効になります。必要に応じてタスクを手動で実行するか、タスクの自動実行の有効化を選択することができます。
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)