问题标签 [matlab-table]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
matlab - 在 Matlab 中,如何从表中删除 na 行?
在 Matlab 中,如何删除数据中包含所有 NA 或某些 NA 的行。
我有一个有列的表 date open high low close volume
日期存在于所有行中。
除了带有 NA 的日期之外,一些行还有所有其他列。
有些行的所有信息都可以,除了关闭。
- 如何获得没有“NA”行的表格(
NA
除 之外的所有内容date
)? - 如何获得仅
close
包含数据(数字)行的表? - 如何获得仅
close
包含非零数行的表。 - 相反,我如何获得一个只有行的表,其中除了
close
具有 NA 的行之外一切都很好?
我在 Matlab 文档中看到了这个矩阵:
这对于所有值为 NAN 的值(这绝不是我的情况,因为日期“索引”列始终有效......)
如果我理解正确,这意味着伪代码:
这会导致所有行在其中一列中至少包含一个数字。
...但是对于表格和仅检查数据字段有什么类似的吗?
matlab - 将数值表值转换为字符数组的最快方法
我有一个包含各种数据类型的表。例如,
我想将所有数值列转换为字符数组变量。通过这个,我的意思是结果应该等同于如果我使用以下方法初始化表:
我想尽可能快地做到这一点,因为我有一个可能有数百万行的表。
目前的工作解决方案:
首先,我得到数字列,在本例中,这将是第 2 列...
然后,我有几种方法可以将这些数值列转换为字符数组类型,它们都涉及循环数值列并使用其他一些变相的循环___fun
函数......
/li>arrayfun
/li>num2cell
和cellfun
下面的速度测试,注意我只做一列和 1e5 个元素,而实际上我想做很多列和可能十倍的行,所以你可以清楚地看到速度问题......
您可以看到这些方法基本上是等效的,这可能与它们的相似性所预期的一样。
有谁知道将表中的所有数据转换为字符数组变量类型的更快方法?我曾想过通过分类,但不知道如何在那里进行。
我更喜欢与 R2015b 兼容的解决方案。
注意:我的数据包含混合类型是相关的,因为我不能(也不想)varfun( ... )
在整个表上使用。
matlab - 您将如何基于多列执行行间操作?MATLAB
我是一名初级程序员,主要是自学成才。我是 MATLAB 和关系数学的新手。目前,我正在尝试在行之间执行数学运算。我想exp
通过相应的标准化con
,然后乘以常数。
这constant
是一个实验室测量,可能会在未来的实验中发生变化。因此,我给了它一个专栏。
下面是我生成的一些示例代码,用于说明我的问题和解决方案。我正在尝试从myTable
到rTable
。
我认识到我的解决方案非常草率,必须有一种方法来执行这些操作,这种操作是人类可读的并且使用较少的临时变量。简而言之,必须有一个更简单的方法。
感谢您的任何意见或建议。也许,我正在处理的数据结构组织得很差。
matlab - 如果它是类的属性,为什么更改表的变量名不起作用?
过去,我一直在广泛使用 Matlab 的table
类。这个非常简单的代码,在脚本内或提示符下,按预期工作:
现在,我拥有与a相同table
的.property
handle class
如果我在命令提示符下执行以下命令,则将zeros
其分配给table
,但VariableNames
保留其默认值,即{'Var1', 'Var2'}
等。
甚至tc.testTable.Properties.VariableNames = varNames
不会改变它们。
这是一个错误,还是我错过了什么?(我正在使用 Matlab R2017b)
matlab - 如何在matlab的命令窗口中显示部分表格?
我有一个包含 17025 行的表。当我尝试显示表格时,会显示整个表格。但我想要它的小部分。如何让它以小部分显示。
matlab - 如何为 Matlab 中表格的列中的所有表格单元格分配相同的值?
我试过了
但都失败了。
有什么办法吗?
matlab - 在 Matlab 中创建具有行和列名的空表
我是 Matlab 的新手,所以我遇到了一个问题,我需要创建具有某些行和列名称的表。
我尝试在代码上使用上面的代码,但在创建它时出现错误(如下所述)。
使用 matlab.internal.tabular.private.rowNamesDim/validateAndAssignLabels 时出错(第 109 行) RowNames 属性必须是一个元胞数组,每个元素都包含一个非空字符向量。
matlab.internal.tabular.private.tabularDimension/setLabels 中的错误(第 173 行)obj = obj.validateAndAssignLabels(newLabels,indices,fullAssignment,fixDups,fixEmpties,fixIllegal);
matlab.internal.tabular.private.tabularDimension/createLike_impl 中的错误(第 355 行)obj = obj.setLabels(dimLabels,[]);
matlab.internal.tabular.private.tabularDimension/createLike 错误(第 62 行)obj = obj.createLike_impl(dimLength,dimLabels);
表格/initInternals 中的错误(第 206 行) t.rowDim = t.rowDim.createLike(nrows,rowLabels);
table.init 中的错误(第 327 行) t = initInternals(t, vars, numRows, rowLabels, numVars, varnames);
array2table 中的错误(第 64 行) t = table.init(vars,nrows,rownames,nvars,varnames);
CarMatrix 中的错误(第 1 行)CameraCar = array2table(zeros(0,20), 'VariableNames',{"c1","c2","c3","c4","c5","c6","c7" ,"c8","c9","c10","c11","c12","c13","c14","c15","c16","c17","c18","c19"," c20"},'行名',{1:800});
matlab - 更改现有表的列名
我在 MATLAB 中有下表:
MATLAB 自动为该表返回两列的列名A1
和作为表A2
的A
集合名称。
如何手动更改每列的名称?
matlab - 如何在 Matlab 中的表格中添加条件格式(或颜色)
如何使用数字为我的 Matlab 表格添加条件格式(例如,背景或文本更改为颜色)。
我已经想出如何格式化我的表格的数值:
matlab - 根据 MATLAB 的特定字符串更改表中元素的值
假设我有以下类型的 MATLAB 表:
我想要做的是生成一个尺寸完全相同的表格,唯一的区别是与风力发电类型相对应的 Total_Power 列的数据值乘以 0.5。因此,我会得到的结果是:
我认为可以解决问题的是一些代码会扫描所有具有字符串“Wind”的行,然后在找到具有该字符串的行之后,将该行的第 3 列乘以 0.5。for 循环似乎是一个可行的解决方案,尽管我不确定如何实现它。任何帮助将不胜感激。