Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

変数の追加と削除

この例では、データセット配列内の変数の追加と削除を行う方法を示します。また、変数エディターでデータセット配列を編集することもできます。

標本データの読み込み

hospitalSmall.xlsx の最初のワークシートからデータセット配列にデータをインポートします。

ds = dataset('XLSFile',fullfile(matlabroot,'help/toolbox/stats/examples','hospitalSmall.xlsx'));
size(ds)
ans =

    14     6

データセット配列 ds には 14 件の観測 (行) と 6 個の変数 (列) があります。

データセット配列を連結して変数を追加

hospitalSmall.xlsx のワークシート Heights には、最初のワークシートの患者の身長が記録されています。このスプレッドシートのデータを ds と連結します。

ds2 = dataset('XLSFile',fullfile(matlabroot,'help/toolbox/stats/examples','hospitalSmall.xlsx'),'Sheet','Heights');
ds = [ds ds2];
size(ds)
ans =

    14     7

データセット配列の変数が 7 件になりました。データセット配列を水平方向に連結できるのは、観測の位置が同じであるか、観測名が同じである場合のみです。

ds.Properties.VarNames{end}
ans =

hgt

ds の最後の変数の名前は hgt です。これは dataset がインポートしたスプレッドシートの 1 行目から読み取ったものです。

変数名で変数を削除

まず、変数 id の一意の識別子を観測名として指定します。その後、変数 id をデータセット配列から削除します。

ds.Properties.ObsNames = ds.id;
ds.id = [];
size(ds)
ans =

    14     6

データセット配列の変数の数が 6 個になりました。変数名の一覧を表示します。

ds.Properties.VarNames(:)
ans = 

    'name'
    'sex'
    'age'
    'wgt'
    'smoke'
    'hgt'

id という変数はなくなっています。

名前で新しい変数を追加

新しい変数 bmi をデータセット配列に追加します。この変数には各患者のボディマス指数 (BMI) が格納されます。BMI は身長と体重の関数です。各患者の姓、性別、BMI を表示します。

ds.bmi = ds.wgt*703./ds.hgt.^2;
ds(:,{'name','sex','bmi'})
ans = 

               name              sex        bmi   
    YPL-320    'SMITH'           'm'        24.544
    GLI-532    'JOHNSON'         'm'        24.068
    PNI-258    'WILLIAMS'        'f'        23.958
    MIJ-579    'JONES'           'f'        25.127
    XLK-030    'BROWN'           'f'        21.078
    TFP-518    'DAVIS'           'f'        27.729
    LPD-746    'MILLER'          'f'        26.828
    ATA-945    'WILSON'          'm'         24.41
    VNL-702    'MOORE'           'm'        27.822
    LQW-768    'TAYLOR'          'f'        22.655
    QFY-472    'ANDERSON'        'f'        23.409
    UJG-627    'THOMAS'          'f'        25.883
    XUE-826    'JACKSON'         'm'        24.265
    TRW-072    'WHITE'           'm'        29.827

BMI の計算式で使用している演算子 ./.^ は、それぞれ要素単位での除算と累乗を示しています。

変数番号に基づく変数の削除

変数 wgt を削除します。この変数はデータセット配列の 4 番目の変数です。

ds(:,4) = [];
ds.Properties.VarNames(:)
ans = 

    'name'
    'sex'
    'age'
    'smoke'
    'hgt'
    'bmi'

変数 wgt がデータセット配列から削除されています。

参考

関連する例

詳細