如何扫描一列中的文本,并将关键术语放入另一列中?大家好!
这是我在这个论坛上的第一篇文章,如果格式不正确,我深表歉意。 我正在编写一个新脚本来分析 12 个实验堆叠的数据集。 我需要从“批次 ID”列中取出一些关键短语,并使用公式/脚本(最好是公式)将它们组织到其他列中。 因此,在这种情况下,我需要“B01”短语进入与包含该短语的批次 ID 同一行的生物反应器列,“VBTS-935”对菌株列执行相同操作,并需要日期执行相同操作与日期列。 这就是我们当前文本数据的格式化方式,但如果有人对如何重新格式化它以便于分析有建议,请告诉我!
感谢您提前的帮助。
自动化和脚本编写内容组织回复:如何扫描一列中的文本,并将关键术语放入另一列中?你好@BunnyBoi12 ,
我建议将公式添加到最后 3 列中。 以下是您可以研究的一些示例。
生物反应器:word(2,:批次ID,“:”)
Strain: word(2, :Batch ID, ", ") // 请注意,引号中也有一个空格!
日期: word(3, :批次 ID, ", : ")
关于日期列的附加说明,您可以将 word() 函数包装在 format() 函数中,并根据需要格式化日期。
帮助 > 脚本索引也是探索可能对您有益的功能的绝佳资源!
回复:如何扫描一列中的文本,并将关键术语放入另一列中?关于如何执行此操作,有很多选项(word() 和 Words() 是您可以使用的几个函数,或者如果您熟悉正则表达式,则可以使用 Regex())。
我还建议的一件事是探索重新编码(右键单击列标题)

例如它有提取片段选项(以及更多)


拆分列后,您应该能够从增强日志中获取脚本

文本到列可能会帮助您将大问题分解为几个小问题。

此外,当您向 JMP 社区发布问题时,如果您可以提供某种类型的数据(如果可以共享,则为模拟数据或真实数据)并包含至少几行所需的结果列,这通常是一个好主意。在测试不同的解决方案时提供帮助。
回复:如何扫描一列中的文本,并将关键术语放入另一列中?太棒了,谢谢你! 在这些用途中,我肯定会更频繁地使用重新编码选项。
回复:如何扫描一列中的文本,并将关键术语放入另一列中?您介意解释一下“2”和“3”的含义吗? 你的公式很有魅力,但是当涉及到公式上下文时,JMP 给出的解释让我无法理解,我想确保我能教我团队的其他成员如何正确使用它
回复:如何扫描一列中的文本,并将关键术语放入另一列中?假设我们有一个字符串:
mystr = "my,name,is,starfruitbob"
word( <此处的数字>, <我正在处理的内容>, <所有分隔符,采用字符串格式> )
在我看来,最好了解其中每一个的作用稍微有些混乱:
- <我正在处理的内容>:例如,这可以是字符串变量或列。 这是输入。 必须是字符类型。
- :“在这里串东西!” <-- 将您想要的所有分隔符放在这里。 每个其中,即使您在其中放置了空格,它们也将单独用作分隔符!
- <此处的数字>:根据您如何分隔输入,它将被分成不同的“块”。 该数字是您要返回的“块”。
让我们看一个例子:
mystr = "my,name,is,starfruitbob";
// Note where the commas are in the variable above
print( word( 1, mystr, "," ) ); // Returns: my
print( word( 3, mystr, "," ) ); // Returns: is
// If the delimiter is changed...
print( word( 1, mystr, "s" ) ); // Returns: my,name,i
// This is because it will return the first characters BEFORE the new delimiter "s"
print( word( 2, mystr, "s" ) ); // Returns: ,
// There's only a single comma between the two "s" delimiters, and is the second "chunk" of the input
这有帮助吗@BunnyBoi12
回复:如何扫描一列中的文本,并将关键术语放入另一列中?我想是这样。 所以如果你这样做了
打印(字(3,mystr,“s”));它会返回“tarfruitbob”?
回复:如何扫描一列中的文本,并将关键术语放入另一列中?确切地。 
回复:如何扫描一列中的文本,并将关键术语放入另一列中?你真是太棒了,我希望你有美好的一天