用于计算满足特定条件的选定行数的公式是否可以在 JMP 中创建列公式来计算满足特定条件的*选定*行数?
Excel 无法执行此操作,但如果执行此操作,公式可能如下所示: =countif(and(isSelected(),a1:a20=$c$1,b1:b20="red"))
回复:计算满足特定条件的选定行数的公式谢谢,吉姆! 有效!
稍稍改写一下,对于那些需要以不同方式聆听事物的人来说,以下是如何使用一列来计算所选行数的方法:
- 使用公式创建一个新列:N Rows( Current Data Table() << get selected rows )
- 请注意,当选择更改时,此公式不会自动更新,这就是我们执行步骤 #2 的原因...
- 使用以下命令创建一个新脚本(在数据表左上角的红色小三角菜单中):
Names Default To Here( 1 );
dt = Current Data Table();
f = Function( {a},
dt << rerun formulas()
);
rs = dt << make row state handler( f );...这基本上是说,每当行状态发生变化时,运行函数“f”,该函数将“a”作为参数(被忽略),并告诉 dt (当前数据表)重新运行其公式。 然后运行该脚本一次。
吉姆的答案显示了如何将其扩展为仅计算满足某些其他条件的选定行,这是原始问题的一部分。
再次感谢!
回复:计算满足特定条件的选定行数的公式单击表面板中数据表名称旁边的红色三角形,然后选择“重新运行公式”。
如果您需要在选择发生更改时自动重新运行公式,则可以编写一个简单的行状态处理程序脚本。
names default to here(1);
dt=current data table();
f = function( {a}, dt << rerun formulas(); );
rs = dt << make row state handler(f);回复:计算满足特定条件的选定行数的公式我运行的是 14.0.0,无论我选择什么,该列都显示为全 1。 某处有重新计算按钮吗?
出于好奇,我的公式有什么问题?
<SPAN class="token function">N Row</SPAN><SPAN class="token punctuation">(</SPAN><SPAN class="token function">Current Data Table</SPAN><SPAN class="token punctuation">(</SPAN><SPAN class="token punctuation">)</SPAN> <SPAN class="token operator"><</SPAN><SPAN class="token operator"><</SPAN><SPAN class="token messages"> GetSelected</SPAN><SPAN class="token punctuation">(</SPAN><SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">)</SPAN>
对我来说很有意义,但它不起作用并且似乎没有提供任何有意义的错误。
回复:计算满足特定条件的选定行数的公式附件是 JMP 示例数据表大类的副本。我已在名为“第 6 列”的新列的相关公式中添加了该公式。我正在运行 JMP 14.2,该公式适合我。
回复:计算满足特定条件的选定行数的公式我将该文本粘贴为该列的公式,但该列最终全部都是点。 我也尝试过这个:
N Row(Current Data Table() << GetSelected())
...这导致了同样的事情。 我期望该列是所选行的数量,例如,选择 3 行,我期望在该列的每个单元格中看到“3”。
回复:计算满足特定条件的选定行数的公式我确实在尝试对选择进行计算——我已经获得了基于时间的数据,例如,噪声、热量和振动与时间的关系,用于进行多次测试。 有时我会在图形生成器中的数据中看到奇怪的簇,我会选择它,然后我想知道这种情况持续了多长时间,所以我想要另一个图形生成器窗口,它可以绘制所选点的计数与.测试ID。
有一个更好的方法吗?
回复:计算满足特定条件的选定行数的公式这是一个可行的公式,或者它也可以用作脚本的元素
dt = Current Data Table();
selRows = dt << get selected rows;
If( N Rows( selRows ) > 0,
count = 0;
For( i = 1, i <= N Rows( selRows ), i++,
count = count + (:age[selRows[i]] == 12 & :sex[selRows[i]] == "F")
);
,
count = 0
);
count;
回复:计算满足特定条件的选定行数的公式@BHarris ,
请问您为什么要考虑列公式? 如果您查看此处显示的示例,会发现此数据表中选择了 4 行。 无论您在哪里检查列公式,它都会显示“4”,除非您想要对所选行进行累积和,以便它会逐渐从 1 到 n。
如果您想使用脚本,这里有一篇非常相似的文章可以解决您的问题
https://community.jmp.com/t5/Discussions/Count-Rows-Selected-amp-quickly-summarize-categories-under-one/td-p/41932
