【问题标题】:Deleting a specific rows and columns from a data-set using Matlab使用 Matlab 从数据集中删除特定的行和列
【发布时间】:2015-09-06 00:47:59
【问题描述】:

我有一个大型数据集。该数据集的样本如下:

213     3      344     54    eloni
45      3      45      34    Trans
224     2      323     332   eloni
343     4      456     345   eloni
456     5      556     45    eloni

假设,我想删除第二列上包含数字 (2) 的原始数据或列号 (5) 上包含字符串 (Trans) 的原始数据。 我可以有一个简单的代码来做到这一点吗?

【问题讨论】:

    标签: matlab dataset


    【解决方案1】:

    对于数值数据,

     dataset(dataset(:,2)==2,:)=[];
    

    更一般地说,

    idx=ismember('Trans',dataset(:,5));
    
    dataset(idx,:)=[];
    

    【讨论】:

    • 我将我的数据导入为数据集而不是矩阵。它给了我以下错误:未定义函数 'eq' for input arguments of 'dataset' 类型。
    • 请参阅this link,了解如何将其推广到数据集类型。您只需要以不同的方式执行逻辑索引。
    猜你喜欢
    • 2015-10-15
    • 1970-01-01
    • 1970-01-01
    • 2023-01-24
    • 1970-01-01
    • 2023-03-04
    • 2017-08-17
    • 2022-01-25
    • 2011-10-30
    相关资源
    最近更新 更多