Custom Token Formula Reference(自定义标记公式参考)章节

下面的表格是对所有运算符和功能的一个参考,可用于在Custom Token Editor(自定义标识编辑器)Parameter Math(参数数学)中创建自定义标识

 

Arithmetic Operators(计算运算符)

 

运算符

Description(描述)

x+y

x加y

x-y

从x中扣除y

x*y

x乘以y

x/y

x除以y

x^y

x的y次方

 

条件/对照运算符使用 IF..THEN..ELSE陈述。

 

运算符

Description(描述)

x>y

x比y大

x<y

X比y小

x=y

x和y相等

x>=y

x大于或等于y

x<=y

X小于或等于y

x<>y

x不等于y

 

Logical Operators(逻辑运算)可以用 IF..THEN..ELSE陈述或结合两种方程式。

 

运算符

描述

x OR y

x OR y

x AND y

x AND y

NOT (x AND y)

(x AND y)的值的相反数

例如: if (x>20 and y>20) then......else

如果结合多重逻辑运算,括号必须围绕每个运算符。

例如:if ((x>20 and y>20) and (a<1 or b>10)) then......else

 

Mathematical Functions(数学函数)

 

函数

描述

Abs(x)

x的绝对值

ArcCos(x)

x的反余弦

ArcCosh(x)

x的双曲线余弦

ArcSin(x)

x的反正弦

ArcSinh(x)

x的双曲线正弦

ArcTan(x)

x的反正切

ArcTanh(x)

x的双曲正切函数

ConvertLinToLog(I,J,K,L)

使用以下参数将线性缩放值转换为对数缩放值:

I = Lin value, J = # of decades, K = output range (with values of 0, 256, 512, or 1024), L = offset

 

这将从1-10,000转换为0-1024。

ConvertLogToLin(I,J,K,L)

使用以下参数将对数缩放值转换为线性缩放值:

I = Log value, J = # of decades, K = input range, L = offset

 

这将从0-1024转换为1-10,000。

Cos(x)

x的余弦

Cosh(x)

x的双曲余弦

CoTan(x)

X的余切

Ln(x)

x的自然对数

Log(x,y)

以x为底y的对数

Max(x,y)

返回x和y中更大的那个值

Maximum([x,y,z...])

返回阵列中 ([x,y,z,…])最大的数值。这个阵列中可以拥有无限制数量的元素。

Mean([x,y,z...])

返回阵列中 ([x,y,z,…])的平均值。这个阵列中可以拥有无限制数量的元素。

Min(x,y)

返回x和y中更小的那个值

Minimum([x,y,z...])

返回阵列中 ([x,y,z,…])最小的数值。这个阵列中可以拥有无限制数量的元素。

Range([x,y,z...])

返回 (Maximum([x,y,z,…]) – Minimum([x,y,z,…]))的结果

Sin(x)

X的正弦值

Sinh(x)

x的双曲正弦值

Sqr(x)

x的平方

Sqrt(x)

x的平方根

StdDev([x,y,z...])

返回阵列中 [x,y,z,…]的标准偏差值。这个阵列中可以拥有无限制数量的元素。

Tan(x)

x的正切值

 

Type Conversion Functions(类型转换函数)这些用于更高级的公式,将数字转换为文本,反之亦然。当特定标识返回的值不是您需要的类型,并且要将其转换为可以包含在公式中的类型时,将使用它们。你也可以转换结果类型,如Custom Token Formatting(格式化自定义标记)中描述的

 

函数

描述

NumericToString(x)

将数字x转换为文本(也被称为一个字符串)。

StringToNumeric(x)

将字符串x转换为数字。

 

 

Logic (True/False) Functions这些功能能返回函数运算应用到参数的真值。一些功能返回True (-1) or of False (0)的数值

 

函数

描述

Between(x,y,z)

如果x在y和z之间(包括等于y或z),则返回True,否则返回False。

FalseValue

返回0

IsFalse(x)

如果x的值为0,则返回True。

IsSameText([Text1,Text2],CaseSensitive)

如果Text1和Text2相同,则返回True。如果Case Sensitive为真,则除了内容之外,这些单词必须匹配。

IsTrue(x)

如果x的值为-1,则返回True。

TrueValue

返回-1

 

 

Text Manipulation Functions这些函数可用于操作或从现有文本值中获取信息。

 

函数

描述

AreValuesInRange([x,y,z...],tolerance,[xName,yName,zName...])

如果数组[x,y,z ...]中的值都在彼此的容差%内,则返回True。如果数组中的一对值不在彼此的容差%内,则返回指示哪些不是的值。

Copy(x,y,z)

X是全文本。Y是开始复制文本的位置。Z是从全文复制的字母数(也称为字符)。返回文本x的一个子集,从位置y开始,总共复制z个字符。

ExtractFilename("file_path")

接受文件名,并返回数据文件名的文本。

例如,若文件路径是C:\Data Files\Today\FlowData1.fcsExtractFilename("file_path")将返回FlowData1.fcs

使用$FIL, $FCSE_FILENAME$FCSE_FILENAMENOPATH关键字的关键字标识可以用于这项功能。

ExtractFolderFromFilename("file_path")

接受文件名,并返回包含数据的文件夹的文件路径文本。

例如,若文件路径是C:\Data Files\Today\FlowData1.fcs从文件名中提取文件夹("file_path")将返回C:\Data Files\Today。

使用$FCSE_FILENAME关键字的关键字标识可以用于这项功能。

FormatFloat("format string",number)

FormatFloat使用Format String给出的格式字符串格式化由Number给出的浮点值格式字符串支持以下格式说明符:

 

Specifier(区分符)

代表

0

数字保留区。如果正在格式化的值在格式字符串中出现'0'位置的数字,那么该数字将被复制到输出字符串。否则,在输出字符串中的该位置存储“0”。

#

数字保留区。如果正在格式化的值在格式字符串中出现'#'位置的数字,那么该数字将被复制到输出字符串。否则,在输出字符串中没有存储在该位置

Decimal point(小数点)。首先 '.' 格式字符串中的字符确定格式化值中小数分隔符的位置; 任何额外的'.' 字符被忽略。输出字符串中用作小数分隔符的实际字符由DecimalSeparator全局变量或其等价项确定。

,

Thousand separator(千位分隔符)。如果格式字符串包含一个或多个','字符,那么输出将在小数点左边的每组三位数之间插入千个分隔符。格式字符串中的“,”字符的位置和数量不会影响输出,除了暗示需要千位分隔符。在输出中用作千位分隔符的实际字符由ThousandSeparator全局变量或其等价物确定。

E+

Scientific notation(科学计数法)。如果格式字符串中包含任何字符串'E +','E-','e +'或'e-',则使用科学符号。一组最多四个'0'字符可以立即按照'E +','E-','e +'或'e-'来确定指数中的最小位数。'E +'和'e +'格式导致为正指数输出加号,而负指数将输出负号。'E-'和'e-'格式仅输出负指数的符号字符。Learn more about working with Scientific Notation(了解更多关于使用科学计数法)

'xx'/"xx"

以单引号或双引号括起来的字符将以此格式输出,不影响格式

;

在格式字符串中分隔正数,负数和零数的部分。

 
格式字符串中小数点前最左边的“0”位置,格式字符串小数点后最右边的“0”位置决定了输出字符串中始终存在的数字范围。

正在格式化的数字总是四舍五入到数字占位符(小数点右侧的'0'或'#')小数位数。如果格式字符串不包含小数点,则格式化的值将舍入为最接近的整数。

如果正在格式化的数字在小数点分隔符的左边有更多位数,那么'。'左边的数字占位符。 在格式字符串中的字符,额外的数字在第一个数字占位符之前输出。

为了允许不同的格式为正值,负值和零值,格式字符串可以包含一到三个以分号分隔的段落,如下所示:

*一个部分:格式字符串适用于所有值。
*两部分:第一部分适用于正值和零,第二部分适用于负值。
*三个部分:第一部分适用于正值,第二部分适用于负值,第三部分适用于零。

如果负值的部分或零值的部分为空,那么如果在分隔符的分号之间没有任何内容,则使用正值的部分。

如果正值的部分为空,或整个格式字符串为空,则该值将使用15位有效数字的普通浮点格式设置格式。如果该值在小数点左侧超过18位数,并且格式字符串未指定科学符号,则也将使用通用浮点格式。

FragmentCount("text1",'text2")

返回text1中分隔的text2中的字符串片段数。

 

Text1将等于一个分隔符,如“\”。Text 2将是一个路径。

 

比如:FragmentCount("\","C:\Documents\Data\Sample.fcs")将返回为4因为有由“\”分隔分成的4部分。

 

返回路径的关键字可以用于Text2。

GetContainingFolder("file_path")

返回包含file_path中命名的文件的文件夹的名称。

 

例如,如果文件Sample.fcs位于目录中C:\Program Files\De Novo Software\FCS Express6Plus Research Edition/Data这个功能的输出会是Data(数据)

GetFragment(n, "text1", "text2")

返回Text2中的第N个字符串片段,通过Text1为分隔符

 

N= the nth occurrence(第n次发生)Text1= 一个分隔符, 例如 "\",Text2= 一个子串,该子串使用Text1为分隔符。

 

一些Text2的例子可:

§路径用 "\" 作为分隔符,例如C:\Documents\Data\Sample.fcs.
§一个文件的名称,其中几个标识符已连接在一起并由“_”分隔,例如FirstnameLastname_ID1_ID2_ID3_Date

 

比如:GetFragment(1, "\", "C:\Documents\Data\Sample.fcs")将返回为C:

 

GetFragment(2, "\", "C:\Documents\Data\Sample.fcs")将返回为Documents(文档)

 

如果“n”是一个负数,该函数将开始向后评估文本字符串。

 

比如:GetFragment(-2,"_","SheldonCooper_ABC_DEF_GHI")将返回为DEF。

包括追踪路径分隔符("file_path")

接受“File_path”的值,同时在字符串的末尾包含分隔符(例如\)。

Pos(x,y)

X是您要查找的文本。Y是您正在搜索的文本。返回y内的x的位置。如果在y中找不到x,返回值为0。

PositionInText("text1","text2",StartingPosition,N)

文本中的位置返回另一串字符中一个字符串的位置。

Text1=你正在搜索的文本

Text2=你正在该文本中搜索

StartingPoint=开始搜索的位置(1,2,3...etc.)

N=您正在搜索的字符串的第N个出现(第一次出现1,第二次出现2,等等)

 

比如:=PositionInText("d","abcdefgabcdefg",1,1)将返回4,因为第一次出现(N = 1)的“d”发生在位置4。

                =PositionInText("d","abcdefgabcdefg",1,2)将返回11,因为第二次出现(N = 2)的“d”发生在位置11。

 

如果没有发现,该函数将返回“0”。

RemoveSpaces(x)

从文本x中移除空格,并返回结果文本。

RemoveText(x,y,RemoveAll)

这个功能将从字符串y中x移除根据是否只删除第一次出现,Remove All将等于True或False。

比如:=RemoveText("def","abcdefg",True)将返回为abcg。

ReplaceText(x,y,z,RemoveAll)

此函数将用字符串z中的字符串y替换字符串x根据是否只删除第一次出现,Remove All将等于True或False。

比如:=ReplaceText("def","xyz","abcdefg",True)将返回为abcxyzg

x+y

如果x和y都是文本(即字符串),则返回x与y的并值。

Trim

移除字符串两侧的空白字符。

比如:=Trim(" ? abcd efgh ? ? ?")将返回为abcd efgh

 

Statistical Functions(统计函数)

 

运算符

Description(描述)

ChiSquareTest([number1,...],[number2,...])

执行卡方检验,以测试数据是否来自特定分布。第一个参数是观测频率的阵列,第二个参数是估计(理论)频率的阵列。

FTest([number1,...],[number2,...])

通过比较1号和2号标准偏差进行F检验。参数是第一个和第二个数据集。

GrubbsTest([number1,...])

对异常值执行Grubbs测试。测试用于检测单变量数据集中的异常值。它是基于正态性的假设。也就是说,在应用Grubbs测试之前,应首先验证您的数据是否可以通过正态分布合理近似。参数是数据集。

KSTest([number1,...],[number2,...])

执行双样本Kolmogorov-Smirnov适合度测试独立随机样本Data1和Data2。测试确定Data1和Data2样本是否从相同的连续总体绘制。参数是第一个和第二个数据集。

LillieforsTest([number1,...])

对未知参数mu和sigma的正态分布执行Lilliefors适合度测试。参数是数据集。

MannWhitney([number1,...],[number1,...],hypothesis type,alpha, use normal approximation)

曼恩惠特尼测试是对零假设的非参数检验,两个样本来自相同类别,反对替代假设,特别是特定类别的平均值比另一个更大。它的运作是假设两组所有的观点都是彼此独立的。(Credit:Wikipedia)

 

函数的可变因素如下:

 

[Number1.....]- 逗号分隔第一个数据集的值。

[Number2.....]- 第二个数据集中的逗号分隔值

Hypothesis Type-TWO_TAILED,LEFT_TAILEDRIGHT_TAILED(与大小写无关)

Alpha- 测试的重要程度。比如:0.05

Use Normal Approximation(使用正常的近似值)-True/False

SSMD(mean max,mean min,n max,n min,SDmax,SDmin)

严格标准化均值差的缩写已被用作高通量筛选测定中命中选择的排名指标。

StainIndex(positive population mean/median, negative population mean/median, negative population standard deviation)

使用阴阳群的平均值/中位数进行染色指数计算,并根据(中值为阳 - 中值为阴/(SD为阴数* 2)的染色指数公式为阴性群标准偏差。

TTest1S([number1,...],expected mean)

执行一个样本T检验。它将数据平均值与预期均值进行比较。第一个参数是数据集。

TTest2S([number1,...],[number2,...],tails,paired)

它将Number1平均值与Number2平均值进行比较。假设是Number1和Number2的方差是相等的,但是未知数。前两个参数是第一个和第二个数据集。Tails参数可以是12它用于定义虚假假设的类型,值1表示左尾,值2表示两尾。配对可以是TrueFalse如果是True它将执行双样本配对t检验。如果False它将执行双样本合并(未配对)t检验。

Wilcoxon([number1,...],[number1,...],hypothesis type,alpha)

Wilcoxon测试是一个非参数测试,比较两个配对组。该测试计算每组对之间的差异并分析这些差异。Wilcoxon Rank Sum 检验可用于测试两个群体具有相同连续分布的虚假假设。(Credit:Investopedia)

 

函数的可变因素如下:

 

[Number1.....]- 逗号分隔第一个数据集的值。

[Number2.....]- 第二个数据集中的逗号分隔值

Hypothesis Type-TWO_TAILED,LEFT_TAILEDRIGHT_TAILED(与大小写无关)

Alpha-例如,测试的重要性水平0.05

ZPrime(mean negative,SD negative,mean positive,SD positive)

Zprime函数用于计算Z因子。Z因子是通过将阴性对照的平均值和标准偏差与阳性对照的平均值和标准偏差进行比较来量化特定测定法在全面的,高通量筛选中的适用性。

ZTest([number1,...],expected mean,expected SD)

将正态分布的数据元素的平均值与已知的标准偏差预期的SD进行比较,得到平均值预期值([Number1,...])是数据库。

 

Date and Time Manipulation Functions(日期和时间函数操作)

 

函数

描述

DateKWToDate($DATE keyword,n)

采用dd-mmm-yy或dd-mmm-yyyy格式的$ DATE关键字的标准格式,并返回mm / dd / yyyy。如果$ DATE的年份列为yy,n将被放置在yy之前,以产生yyyy。将使用关键字标识插入$ DATE的值。

 

例如如果$DATE关键词是03-Nov-05DateKWToDate($DATE,20)将返回11/03/2005。

 

如果年份已经格式化为yyyy,则该函数仍将返回mm / dd / yyyy。如果年份已经格式化为yyyy,那么在函数中仍然需要计算n。

 

例如,如果$DATE关键词为04-Jul-2008,DateKWToDate($DATE,20)将返回07/04/2008。同样,DateKWToDate($DATE,0)将返回07/04/2008。

DaysBetween(StartDate,EndDate)

返回在开始日期和结束日期之间输入的值之间的天数。除了mm / dd / yyyy格式之外的日期需要在此函数中使用之前通过DateKWToDate和/或FormatDateTime运行。

FormatDateTime("format","Date or Time")

Format DateTime 格式化使用给定格式给出的时间或日期值。

 

示例:= FormatDateTime(“yyyy-mm-dd”,(<Current Date token>))将以显示年 - 月 - 日的格式返回当前日期, 月份和日期为2位数,年份为4位数。

= FormatDateTime(“hh:mm:ss”,(<Current Time token>))将以显示“小时:分钟”的格式返回当前时间: 小时,分和秒有2位数字

 

*请注意,如果使用<Current Date>标识,则不需要引号,因为此标识的结果类型为文本

 

格式可以如下:

 

Specifier Displays(分隔符展示):

c

使用ShortDateFormat全程变量给出的格式显示日期,其次是使用LongTimeFormat全程变量给定的格式的时间。如果日期时间值精确表示午夜,则不显示时间。

d.

将日期显示为无前导零的数字(1-31)。

dd

将日期显示为含前导零的数字(01-31)。

ddd

使用ShortDayNames全程变量给出的字符串将日期显示为缩写(Sun-Sat)。

dddd

使用LongDayNames全程变量给出的字符串将日期显示为全名(星期日 - 星期六)。

ddddd

使用ShortDateFormat全程变量给出的格式显示日期。

Dddddd

使用LongDateFormat全程变量给出的格式显示日期。

e

(仅限Windows)以当前时期/时代的年份显示为无前导零(不包括日语,韩语和台湾地区)的数字。

Ee

(仅限Windows)以当前时期/时代的年份显示为有前导零(不包括日语,韩语和台湾地区)的数字。

g

(仅限Windows)将时段/时代显示为缩写(仅限日语和台湾地区)。

gg

(仅限Windows)以全名(日语和台湾地区)显示周期/时代。

m

将日期显示为无前导零的数字(1-12)。如果m分隔符紧随h或hh说明符,则显示分钟而不是月份。

mm

将日期显示为前导零的数字(01-12)。如果mm 分隔符紧随h或hh分隔符,则显示分钟而不是月份。

mmm

使用ShortMonthNames全程变量给出的字符串显示月份作为缩写(Jan-Dec)。

mmmm

使用LongMonthNames全程变量给出的字符串将该月份显示为全名(1月至12月)。

yy

将年份显示为两位数字(00-99)。

yyyy

将年份显示为四位数字 (0000-9999)。

h

显示没有前导零(0-23)的小时。

hh

显示带有零(00-23)的小时。

n

显示没有前导零(0-59)的分钟。

nn

显示一个前导零(00-59)的分钟。

s

显示第二个没有前导零(0-59)。

ss

显示第二个为前导零(00-59)。

z

显示无前导零(0-999)的毫秒。

zzz

以毫秒为单位显示前导零(000-999)

t

使用ShortTimeFormat全程变量给出的格式显示时间。

tt

使用LongTimeFormat全程变量给出的格式显示时间。

am/pm

使用前一个h或hh分类符的12小时钟,并在中午之前的任何小时显示“am”,并在中午后的任何小时显示“pm”。am / pm分类符可以使用较低,上限或混合大小写,相应地显示结果。

a/p

使用前一个h或hh分类符的12小时钟,并在中午之前的任何小时显示“a”,并在中午后的任何小时显示“p”。a / p分类符可以使用较低,上限或混合大小写,相应地显示结果。

ampm

使用前面h或hh分类符的12小时制,并在中午之前的任何时间显示TimeAMString全程变量的内容,以及在中午之后任何小时的TimePMString全程变量的内容。

/

显示DateSeparator全程变量给出的日期分隔符

:

显示TimeSeparator全程变量给出的时间分隔符。

'xx'/"xx"

以单引号或双引号括起来的字符将以此格式输出,不影响格式。

HoursBetween(start time,end time)

计算开始时间和结束时间之间的小时数。关键字$ BTIM或$ ETIM可以用于开始和结束时间。然而,在使用此函数之前,用户定义的时间需要通过StrToTimeFMT函数来提供,以建立正确的格式。

MillisecondsBetween(start time,end time)

计算开始时间和结束时间之间的毫秒数。关键字$ BTIM或$ ETIM可以用于开始和结束时间。。然而,在使用此函数之前,用户定义的时间需要通过StrToTimeFMT函数来提供,以建立正确的格式。

MinutesBetween(start time,end time)

计算开始时间和结束时间之间的分钟数。关键字$ BTIM或$ ETIM可以用于开始和结束时间。。然而,在使用此函数之前,用户定义的时间需要通过StrToTimeFMT函数来提供,以建立正确的格式。

SecondsBetween(start time,end time)

计算开始时间和结束时间之间的秒数。关键字$ BTIM或$ ETIM可以用于开始和结束时间。。然而,在使用此函数之前,用户定义的时间需要通过StrToTimeFMT函数来提供,以建立正确的格式。

StrToDateFMT(text, "format", "delimiter")

返回以用户定义的格式的日期字符串,使用指定的分隔符(例如“/”)的ddmmyyyy的FormatDateTime(“format”,“Date或Time”)中可以看到的分隔符显示。

StrToTimeFMT(text, "time delimiter", "millisecond delimiter")

使用时间分隔符和毫秒分隔符返回时间字符串。

YearsBetween(Start Date,End Date)

返回在开始日期和结束日期之间输入的值之间的年数。在mm / dd / yyyy格式之外的任何日期需要在此函数中使用之前通过DateKWToDate和/或FormatDateTime运行。

 

Regression(回归)这些函数允许拟合几个回归函数并计算相应的结果。其中两个函数允许从具有回归曲线拟合的散点来检索给定Y(或给定的X)的X(或Y)值带回归分析的散布图。

 

函数

描述

RegressionPlotXToY(Plot ID, Overlay Number, X Value)

三个强制性参数是回归图(数字)的绘图编号,回归拟合(数字)的叠加数和X已知值(数字)。该函数返回给定X输入值的回归函数的Y值。只允许单个输入X值。

RegressionPlotYToX(Plot ID, Overlay Number, Y Value)

三个强制性参数是回归图(数字)的绘图编号,回归拟合(数字)的叠加数和Y已知值(数字)。该函数返回给定Y输入值的回归函数的X值。只允许输入一个Y值。

 

 

SOP (标准操作程序) 函数这些功能可以用于从SOP导出信息

 

函数

描述

HasSOPBeenRun

以-1(True)或0(False)的形式返回true或false,以确定是否有任何SOP先前在布局中运行。

IsSOPAfterStep(StepID)

以-1(True)或0(False)的形式返回true或false,以确定当前SOP步骤是在特定SOP内部步骤ID之后。

IsSOPBeforeStep(StepID)

以-1(True)或0(False)的形式返回true或false,以确定当前SOP步骤是在特定SOP内部步骤ID之前。

IsSOPFinished

以-1(True)或0(False)的形式返回true或false,以确定SOP是否在界面布局中完成运行。

IsSOPOnStep(StepID)

以-1(True)或0(False)的形式返回true或false,以确定运行的SOP是否当前处于特定的SOP内部步骤ID。

IsSOPRunning

以-1(True)或0(False)的形式返回true或false,以确定SOP当前是否正在运行。

 

Parameter Math Variables(参数数学变量)这些功能可用于操作或从现有参数值中获取信息。

 

函数

描述

Row(行)

变量“row”描述数据文件的特定行或单元格中的当前值。“Row”可用于对文件中的一系列值执行连续计算。例如,可以使用'row'来创建一个时间参数。通过使用'row'变量,您可以使用细胞数目作为参数,并可以对单元格编号进行绘制荧光,以检查随时间的均匀流动。或者,如果 获取需要5分钟,您有5000个细胞数,您可以使用以下公式获取获取细胞数的实际时间(以分钟为单位)。方法:=(row-1)*(5/5000)

ConvertLinToLog(I,J,K,L)

与上述相同,除了变量I将使用正在转换的参数号,例如P4或P14。

ConvertLogToLin(I,J,K,L)

与上述相同,除了变量I将使用正在转换的参数号,例如P4或P14。