如何给列赋值请帮助了解如何生成脚本,我想创建一个新列,通过判断名为“rundate”的列来分配值{A,B,C,D,E},具有最旧日期的同一行需要分配“A”。对于具有相同日期的行,需要分配相同的值,对于具有不同日期的行需要分配不同的值,如图所示。
运行日期
2020年4月1日 7:18
2020年4月1日 7:18
2020年4月1日 7:18
2020年4月1日 7:47
2020年4月1日 8:13
2020年4月1日 8:13
2020年4月1日 8:13
2020年4月1日 8:13
2020年4月1日 8:13
2020年4月1日 8:43
2020年4月1日 8:43
2020年4月1日 8:43
2020年4月1日 8:43
2020年4月1日 8:43
2020年4月1日 8:43
2020年4月1日 8:43
2020年4月1日 9:13

回复:如何为列分配值我有一个问题要问你......你读过有关公式的文档吗?如果没有,您需要阅读发现 JMP 文档
帮助==>JMP 文档库 发现 JMP
这是对之前公式的修改
If( Row() == 1,
theGroup = {"WL15", "WL08", "WL06", "WL02", "WL01"};
counter = 1;
);
If(
Lag( :Group ) != :Group, counter = 1,
Lag( :rundate ) != :rundate, counter
++);
theGroup[counter];
我还建议,由于公式基于数据的顺序,因此一旦公式正确运行,您就进入新列的列信息,并从列属性中删除公式。这将保留值,但如果更改数据的顺序,则不会重新运行公式
回复:如何为列分配值非常感谢您的快速回复,非常感谢您的建议,效果很好,还有一个问题,如果再添加一个称为组的列,数据按组和运行日期排序,如何生成如图所示的“新列” ?区别在于 1.) 列分配值发生变化,而不是单个字符。 2.) 考虑到组名称也发生变化,因此分配的值重置为第一个“WL15”。
新列分配的值为 {WL15、WL08、WL06、WL02、WL01},手动定义。

集团运行日期
WS12 2020年4月1日 7:18
WS12 2020年4月1日 7:18
WS12 2020年4月1日 7:18
WS12 2020年4月1日 7:47
WS12 2020年4月1日 8:13
WS12 2020年4月1日 8:13
WS12 2020年4月1日 8:13
WS12 2020年4月1日 8:13
WS12 2020年4月1日 8:13
WS12 2020年4月1日 8:43
WS12 2020年4月1日 8:43
WS12 2020年4月1日 8:43
WS12 2020年4月1日 8:43
WS12 2020年4月1日 8:43
WS12 2020年4月1日 8:43
WS12 2020年4月1日 8:43
WS12 2020年4月1日 9:13
XW32 2020年4月1日 9:41
XW32 2020年4月1日 10:17
XW32 2020年4月1日 10:46
XW32 2020年4月1日 10:46
XW32 2020年4月1日 10:46
XW32 2020年4月1日 11:19
XW32 2020年4月1日 14:46
XW32 2020年4月1日 14:46
XW32 2020年4月1日 14:46
XW32 2020年4月1日 14:46
XW32 2020年4月1日 14:46
WY07 2020年4月1日 15:12
WY07 2020年4月1日 15:41
WY07 2020年4月1日 18:23
WY07 2020年4月1日 18:52
回复:如何为列分配值这个公式应该可以满足你的要求
If( Row() == 1,
theLetter = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
counter = 1;
);
If( Lag( :rundate ) != :rundate,
counter
++);
Substr( theLetter, counter, 1 );