用户自定义字段计算
- 格式:doc
- 大小:50.00 KB
- 文档页数:5
Excel数据透视表高级技巧自定义计算和字段Excel数据透视表高级技巧:自定义计算和字段Excel的数据透视表是一种强大的数据分析工具,可以帮助用户快速、准确地汇总和分析大量数据。
其中的高级技巧自定义计算和字段功能,能够进一步增强数据透视表的功能和灵活性。
本文将向您介绍如何利用这些高级技巧来进行自定义计算和创建自定义字段。
自定义计算是一项在数据透视表中实现特定计算的功能。
例如,您可以使用自定义计算来计算百分比、差额、均值等统计指标。
下面将通过实例来演示如何使用自定义计算。
首先,打开一个包含数据的Excel表格,并选中需要创建数据透视表的范围。
接下来,点击Excel顶部菜单栏的“数据”选项卡,然后点击“数据透视表”。
在弹出的对话框中,选择您想要放置数据透视表的位置,然后点击“确定”。
在数据透视表字段列表中,您可以将字段拖动到“行”、“列”、“值”或“筛选器”区域,来构建数据透视表的基本结构。
然后,点击“值字段设置”,在弹出的对话框中您可以选择需要应用的计算类型,例如“求和”、“计数”、“平均值”等。
除了默认计算类型外,您还可以使用自定义计算来执行更复杂的计算。
例如,计算一列数据中的百分比。
在数据透视表字段列表中,右键单击需要进行计算的字段,然后选择“值字段设置”选项。
在“值字段设置”对话框中,选择“值字段设置”选项卡并点击“自定义”。
在自定义计算对话框中,输入计算公式。
比如,如果您想计算销售额百分比,可以输入公式“=销售额/总销售额”。
然后,为该计算定义一个适当的名称,如“百分比”。
点击“添加”按钮,然后关闭对话框。
现在,您将在数据透视表中看到一个新的计算字段,该字段将显示您定义的自定义计算结果。
您可以根据需要对数据透视表进行进一步调整和格式化。
除了自定义计算,您还可以创建自定义字段来根据现有字段进行处理和分析。
自定义字段可以用于实现更复杂的数据操作,例如合并字段、条件计算等。
接下来,我们将介绍如何创建自定义字段。
Excel数据表进阶如何添加计算字段和计算项Excel数据表进阶:如何添加计算字段和计算项Excel是一种用于管理、记录、计算和分析数据的电子表格软件。
在Excel的数据表中,用户可以定义计算公式、自动计算数据和创建新的字段。
本文将介绍如何使用Excel添加计算字段和计算项,以及如何利用这些功能来提高数据处理的效率和准确性。
I. 什么是计算字段和计算项?在Excel的数据表中,计算字段是指基于现有字段或单元格内容创建新的字段。
计算字段可以通过使用Excel的函数和表达式进行定义,可以根据某些条件自动计算、排序或拼接数据。
计算项是指在数据表中创建的新的计算对象,比如维度和度量,它们用于展示和分析数据的不同方面。
II. 如何添加计算字段?在Excel的数据表中,添加计算字段需要进行以下步骤:1. 选中数据表中的一个空白列,此处以“H列”为例。
2. 在H列的第一行输入一个列标题,例如“合计”。
3. 在H列的第二行输入计算公式或表达式,例如“=SUM(B2:G2)”表示计算B2至G2单元格范围内的和。
4. 拖动H列的右下角的黑色小方块使公式自动填充到所有需要计算的单元格范围内。
III. 如何添加计算项?在Excel的数据表中,添加计算项需要进行以下步骤:1. 选中数据表的一行或多行,此处以“5-10行”为例。
2. 在“数据”选项卡中点击“透视表”。
3. 在“透视表”对话框中,将需要用作“维度”的字段拖动到“行”区域,将需要用作“度量”的字段拖动到“值”区域。
4. 在“值”区域中,将需要的计算项目拖动到表格中,或者在“参数设置”中使用内置函数或自定义公式进行计算。
IV. 如何更新计算字段和计算项?在Excel的数据表中,更新计算字段和计算项需要进行以下步骤:1. 找到需要更新的计算字段或计算项所在的单元格。
2. 修改或删除该单元格中的公式、表达式或参数。
3. Excel将自动重新计算所有依赖于该字段或计算项的单元格和图表,即更新相应的数据和展示。
Excel数据表高级技巧如何设置自定义计算项Excel数据表高级技巧——如何设置自定义计算项在Excel中,我们经常需要对一些数据进行统计和计算。
除了常用的内置函数外,你还可以通过设置自定义计算项来实现更加灵活、个性化的计算需求。
本文将介绍如何在Excel数据表中设置自定义计算项的高级技巧。
一、什么是自定义计算项自定义计算项是指用户可以在Excel数据表中自行定义的计算公式。
通过设置自定义计算项,你可以根据特定的需求进行数据分析、汇总和计算,拓展了Excel表格的功能。
二、设置自定义计算项的步骤1. 选择需要设置自定义计算项的数据范围。
请确保选定的数据范围包含所有需要计算的数据,并且数据是连续的。
2. 在Excel菜单栏中选择“数据”选项卡,然后点击“汇总”组中的“自动求和”按钮。
3. 在弹出的“自动求和”对话框中,勾选“求和项”以外的其他计算项,然后点击“确定”按钮。
4. 在Excel工作表中即可看到添加了自定义计算项的结果。
三、自定义计算项的常用技巧1. 使用SUM函数进行求和计算SUM函数是Excel中常用的内置函数,用于计算选定数据范围内的数值之和。
通过在自定义计算项中使用SUM函数,你可以实现对特定列或行进行求和计算的功能。
2. 使用AVERAGE函数进行平均计算AVERAGE函数是Excel中的另一个常用内置函数,用于计算选定数据范围内数值的平均值。
通过在自定义计算项中使用AVERAGE函数,你可以轻松地计算出所选数据的平均值。
3. 使用MAX函数和MIN函数进行最大最小值计算MAX函数和MIN函数分别用于计算数据范围内的最大值和最小值。
通过在自定义计算项中使用这两个函数,你可以方便地得到所选数据的最大值和最小值。
4. 使用COUNT函数进行计数COUNT函数用于统计选定数据范围内的数值个数。
通过在自定义计算项中使用COUNT函数,你可以快速计算出所选数据的个数。
5. 使用IF函数进行条件计算IF函数是Excel中非常强大的函数,可以根据特定的条件进行计算。
1.1.1.1 用户自定义字段计算用户自定义字段,如时延、里程字段,这些不是原始的数据帧的IE字段,但可以通过数据帧之间字段计算得到。
用户自定义字段,有2种计算方式,一种为字段列之间的运算,一种为数据帧之间的运算。
这些都在系统库的CustomIEInfo中定义,给出了源字段所在的数据表名,计算结果存储的数据表名。
1.1.1.1.1 计算公式的书写格式规范1、公式表述:Formula=(算术表达式)"[ "条件表达式"]" (算术运算符) (算术表达式) " ["条件表达式"]";引号内容表示关键字。
2、算术表达式:[算术表达式1] (算术运算符) (算术表达式2);在算术运算符为+或-时,算术表达式1可省略,表示正数或负数;3、算术运算符:+、-、*、/、%;4、条件表达式:一个条件表达式为一个"[]"5、逻辑运算符:And, Or, Not, Xor;大小写不敏感;6、逻辑表达式:可以使用比较运算符产生,如:(算术表达式1) (比较运算符) (算术表达式2);也可以是逻辑表达式之间的运算。
[逻辑表达式1] (逻辑运算符) (逻辑表达式2);在逻辑运算符为Not时,其与后面的逻辑表达式2相连,之前必须是另外一个逻辑运算符或无内容;7、比较运算符:>、>=、<、<=、==、!=;8、运算优先符:(),表达式为:(表达式1) ,支持嵌套,如(表达式1*(表达式2+表达式3)+ 表达式4);9、赋值算子:=;10、运算符的优先级:●"()"、"[]"、"{}"、"." ;●"Not" 、"Xor";●"*"、"/"、"%";●"+"、"-";●"<"、"<="、">"、">=";●"=="、"!=";●"And";●"Or";●"=";●","优先级为从上到下,从左到右逐级递减。
pivotgridcontrol控件自定义字段计算的例子PivotGridControl控件是DevExpress公司提供的一个灵活强大的数据透视表控件,用于展示、分析和汇总大量的数据。
PivotGridControl控件允许用户根据需要自定义字段计算,以满足不同的数据分析需求。
下面将介绍一些参考内容,帮助开发者更好地理解和使用PivotGridControl控件中的自定义字段计算功能。
1. 数据源设置在使用PivotGridControl控件之前,首先需要设置数据源。
通常情况下,我们可以使用DataTable或者BindingList作为数据源。
例如,以下是设置DataTable作为数据源的一个示例:```csharpDataTable dt = new DataTable();dt.Columns.Add("Year", typeof(int));dt.Columns.Add("Quarter", typeof(string));dt.Columns.Add("Category", typeof(string));dt.Columns.Add("Sales", typeof(decimal));dt.Rows.Add(2020, "Q1", "Electronic", 1000);dt.Rows.Add(2020, "Q1", "Clothing", 2000);dt.Rows.Add(2020, "Q2", "Electronic", 1500);dt.Rows.Add(2020, "Q2", "Clothing", 2500);dt.Rows.Add(2021, "Q1", "Electronic", 1200);dt.Rows.Add(2021, "Q1", "Clothing", 2200);dt.Rows.Add(2021, "Q2", "Electronic", 1300);dt.Rows.Add(2021, "Q2", "Clothing", 2300);pivotGridControl1.DataSource = dt;```2. 字段设置设置完数据源后,我们需要设置展示在PivotGridControl中的字段。
Excel数据透视表高级应用自定义计算与字段设置Excel的数据透视表是一种强大的分析工具,可以帮助用户整理和分析大量的数据。
除了基本的数据汇总和分析功能外,数据透视表还提供了一些高级的应用,例如自定义计算和字段设置。
本文将详细介绍这些高级应用的使用方法。
一、自定义计算自定义计算是指在数据透视表中对原始数据进行运算并生成计算字段的功能。
通过自定义计算,可以根据需要对数据进行加减乘除等操作,以实现更灵活的分析和汇总需求。
使用自定义计算的方法如下:1. 在数据透视表中,选择需要进行自定义计算的字段,并右键点击该字段的任意单元格。
2. 在弹出的菜单中,选择“值字段设置”选项。
3. 在“值字段设置”对话框中,点击“添加计算字段”按钮。
4. 在“名称”栏中输入计算字段的名称,如“总销售额”。
5. 在“公式”栏中输入计算字段的公式,如“=销售数量*销售单价”。
6. 点击“确定”按钮完成自定义计算。
二、字段设置字段设置是指对数据透视表中的字段进行自定义展示和设置的功能。
通过字段设置,可以调整字段的显示顺序、更改字段的汇总方式以及设置字段的格式等。
使用字段设置的方法如下:1. 在数据透视表中,选择需要进行字段设置的字段,并右键点击该字段的任意单元格。
2. 在弹出的菜单中,选择“字段设置”选项。
3. 在“字段设置”对话框中,可以进行以下设置:- 在“显示”选项卡中,可以调整字段的显示顺序和格式,如设置字段的名称、数字格式、字体样式等。
- 在“布局和打印”选项卡中,可以设置字段的汇总方式、隐藏或显示字段。
- 在“排序和筛选”选项卡中,可以对字段进行排序和筛选。
- 在“值字段设置”选项卡中,可以对字段的计算方式进行设置,如对数目字段选择求和、平均值、最大值等。
4. 根据需要进行相应的设置,并点击“确定”按钮完成字段设置。
通过上述的自定义计算和字段设置功能,可以更高效和灵活地使用Excel数据透视表进行数据分析和汇总。
redmine 自定义字段公式Redmine是一个开源的项目管理工具,它提供了丰富的功能来帮助团队进行项目管理和跟踪。
在Redmine中,可以通过自定义字段来满足特定项目的需求,包括使用公式来计算字段的值。
自定义字段和公式的结合可以帮助用户更灵活地管理和分析项目数据。
首先,要在Redmine中创建自定义字段,需要登录到Redmine 系统,并进入特定项目的设置页面。
在自定义字段的选项中,可以选择字段类型为“计算”或“公式”,然后输入相应的公式来定义字段的计算逻辑。
在这里,用户可以使用一些基本的数学运算符和函数来构建公式,比如加减乘除、求和、平均值等。
举例来说,假设我们需要在Redmine中创建一个自定义字段来计算任务的工作量,可以使用公式“工作量 = 估计时间 + 实际耗时”,其中“估计时间”和“实际耗时”是已有的自定义字段。
通过这样的公式,可以自动计算出任务的工作量,而不需要手动输入这个数值。
除了基本的数学运算,Redmine还支持一些高级的函数和逻辑运算符,比如IF条件语句、日期函数等。
这些功能可以帮助用户更精细地定义自定义字段的计算逻辑,从而满足不同项目的需求。
需要注意的是,使用公式计算自定义字段的值需要一定的逻辑和数学基础,以确保公式的准确性和可靠性。
此外,如果涉及到复杂的计算逻辑,建议事先在测试环境中进行验证,以确保公式的正确性和稳定性。
总之,通过在Redmine中使用自定义字段和公式,用户可以更灵活地管理和分析项目数据,满足不同项目的特定需求。
同时,合理的使用公式可以提高工作效率,减少手工计算的错误和繁琐。
希望这些信息能够帮助你更好地理解在Redmine中如何使用自定义字段和公式。
数据表字段计算自定义计算方式在数据库管理系统中,数据表是存储数据的基本组织形式,而字段则是数据表中的基本单元。
字段包含了数据的属性和特征,根据字段的类型和值可以进行各种计算操作。
本文将探讨如何通过自定义计算方式来对数据表字段进行计算。
1. 计算方式的定义与使用在数据表中,字段的计算方式通常可以通过使用内置的数学函数或操作符来实现。
然而,有时候我们需要更灵活的计算方式,以满足特定的需求。
例如,我们可能需要计算两个字段之间的差值,或者根据多个字段的值进行复杂的逻辑计算。
这时候,自定义计算方式就派上了用场。
自定义计算方式的定义一般通过编写计算逻辑的代码来实现,如SQL语句或存储过程。
在执行计算操作时,将自定义的计算方式应用到需要计算的字段上即可。
2. SQL语句的自定义计算方式SQL语句是一种用于操作和管理数据库的语言,通过使用SQL语句,我们可以方便地进行字段计算操作。
下面是一个示例,展示如何使用SQL语句来自定义字段计算方式。
假设我们有一个数据表"sales",其中包含了"quantity"(销售数量)和"price"(单价)两个字段。
我们想要计算销售总额,可以使用如下的SQL语句:```SELECT SUM(quantity * price) AS total_amount FROM sales;```在上述语句中,我们使用了SUM函数和乘法操作符来计算销售总额。
通过将计算结果指定为"total_amount"字段,我们可以方便地获取计算后的值。
3. 存储过程的自定义计算方式存储过程是一种预定义的SQL代码块,通过存储过程,我们可以将常用的计算逻辑封装起来,以便重复使用。
在存储过程中,我们可以通过自定义参数来实现字段的自定义计算。
以下是一个示例存储过程的代码:```CREATE PROCEDURE calculate_total_amountASBEGINDECLARE @total_amount INT;SELECT @total_amount = SUM(quantity * price) FROM sales;SELECT @total_amount AS total_amount;END```在上述存储过程中,我们通过DECLARE语句定义了一个变量"@total_amount",用于存储计算结果。
Excel数据表计算字段创建自定义计算字段Excel是一个功能强大的电子表格软件,它提供了许多强大的功能来处理和分析数据。
在Excel中,我们可以使用计算字段来创建自定义计算字段,以满足我们的特定需求。
本文将介绍如何在Excel数据表中创建自定义计算字段。
步骤一:打开Excel并选择数据表首先,打开Excel并选择包含数据的工作簿和工作表。
确保您已经选择了正确的数据表,因为您将在该表中创建自定义计算字段。
步骤二:选择"插入函数"选项在Excel的菜单栏中,选择"插入"选项,然后选择"函数"。
步骤三:选择"计算字段"在函数列表中,您将看到许多函数的选项。
选择"计算字段"选项。
步骤四:输入计算字段的名称和表达式在弹出的对话框中,输入您希望创建的计算字段的名称。
然后,根据您的需求输入计算字段的表达式。
可以使用Excel的内置函数和运算符来构建表达式。
步骤五:选择计算字段的数据类型根据计算字段的需求,选择适当的数据类型。
例如,如果您的计算字段将包含文本值,则选择"文本"数据类型。
如果是数字值,则选择"数字"数据类型。
步骤六:应用计算字段完成上述步骤后,点击"确定"按钮。
Excel将根据您的要求在数据表中创建自定义的计算字段。
它将应用表达式到每一行数据,并计算出相应的值。
步骤七:使用和格式化计算字段一旦计算字段被创建,您可以在Excel中使用它进行其他计算和分析。
您还可以对计算字段进行格式化,以便更好地呈现数据。
总结:通过使用Excel的计算字段功能,我们可以创建自定义的计算字段,以满足我们特定的数据处理和分析需求。
这个功能为我们提供了更多的灵活性和功能性,帮助我们更好地理解和利用数据。
所以,在Excel中要灵活运用计算字段,将会对您的数据处理和分析工作起到很大帮助。
Excel数据透视表进阶自定义计算字段在Excel中,数据透视表是一种功能强大的工具,可以帮助我们快速分析和汇总大量数据。
当我们使用数据透视表时,有时候需要对现有字段进行进一步的计算,以满足特定的需求。
这时,自定义计算字段就成为解决问题的利器。
本文将介绍Excel数据透视表中自定义计算字段的进阶应用。
1. 什么是数据透视表的自定义计算字段?自定义计算字段是一种在数据透视表中创建自定义表达式以进行计算的方法。
通过自定义计算字段,我们可以基于现有字段创建新的字段,并进行各种数学、逻辑、文本等类型的计算。
这使得我们能够更深入地挖掘我们的数据并得出更有意义的结论。
2. 如何创建自定义计算字段?在Excel数据透视表中,创建自定义计算字段非常简单。
首先,选中数据透视表中的任意单元格,然后转到“分析”选项卡上的“字段、项和集合”组。
在该组中,可以找到“计算字段”选项。
点击该选项,然后在弹出的对话框中输入自定义计算字段的名称和表达式。
这里的表达式可以使用Excel中的各种函数、运算符和字段名称来进行计算。
3. 自定义计算字段的应用案例为了更好地理解自定义计算字段的应用,我们举一个实际案例。
假设我们有一个销售数据表格,其中包含产品名称、销售额和利润三个字段。
我们想要计算每个产品的利润率,即利润除以销售额的比例。
这时,我们可以使用自定义计算字段来实现。
在数据透视表中创建一个名为“利润率”的自定义计算字段,表达式为“=利润/销售额”,即可得到每个产品的利润率。
4. 自定义计算字段的进阶应用除了简单的四则运算外,自定义计算字段还可以应用更多高级的函数和逻辑。
比如,我们可以使用IF函数来根据条件进行计算。
假设我们的销售数据表格还包含地区字段,我们想要计算每个地区的平均利润率。
这时,我们可以在自定义计算字段中使用IF函数来实现条件判断,并进行相应的计算。
具体的表达式可以为“=IF(地区="东部",EAST_AVG_PROFIT_RATE, WEST_AVG_PROFIT_RATE)”。
1.1.1.1 用户自定义字段计算用户自定义字段,如时延、里程字段,这些不是原始的数据帧的IE字段,但可以通过数据帧之间字段计算得到。
用户自定义字段,有2种计算方式,一种为字段列之间的运算,一种为数据帧之间的运算。
这些都在系统库的CustomIEInfo中定义,给出了源字段所在的数据表名,计算结果存储的数据表名。
1.1.1.1.1 计算公式的书写格式规范1、公式表述:Formula=(算术表达式)"[ "条件表达式"]" (算术运算符) (算术表达式) " ["条件表达式"]";引号内容表示关键字。
2、算术表达式:[算术表达式1] (算术运算符) (算术表达式2);在算术运算符为+或-时,算术表达式1可省略,表示正数或负数;3、算术运算符:+、-、*、/、%;4、条件表达式:一个条件表达式为一个"[]"5、逻辑运算符:And, Or, Not, Xor;大小写不敏感;6、逻辑表达式:可以使用比较运算符产生,如:(算术表达式1) (比较运算符) (算术表达式2);也可以是逻辑表达式之间的运算。
[逻辑表达式1] (逻辑运算符) (逻辑表达式2);在逻辑运算符为Not时,其与后面的逻辑表达式2相连,之前必须是另外一个逻辑运算符或无内容;7、比较运算符:>、>=、<、<=、==、!=;8、运算优先符:(),表达式为:(表达式1) ,支持嵌套,如(表达式1*(表达式2+表达式3)+ 表达式4);9、赋值算子:=;10、运算符的优先级:●"()"、"[]"、"{}"、"." ;●"Not" 、"Xor";●"*"、"/"、"%";●"+"、"-";●"<"、"<="、">"、">=";●"=="、"!=";●"And";●"Or";●"=";●","优先级为从上到下,从左到右逐级递减。
11、变量:TableName.FieldName;如果省略,表示使用该变量之前的TableName;12、常量:常数、字符串。
字符串使用双引号;13、函数:提供库函数,如Sum, Avg, Max, Min, Sqrt, Pow, Count,Int, Dist;可扩展;函数名大小写不敏感。
函数的表达式为:FunctionName (Param1, Param2, .., Paramn);目前已支持的函数参数约定如下:●Sum(算术表达式);计算和;●dBSum(算术表达式);计算分贝表示的数之和;即先转换成物理量,然后相加,再取分贝值;●Count(算术表达式);计数;●Max(算术表达式);计算最大值;●Min(算术表达式);计算最小值;●Avg(算术表达式);计算平均值;●dBAvg(算术表达式);计算分贝表示的数之平均值;即先转换成物理量,然后相加,取平均值,再取分贝值;●Pow(算术表达式(低数), 算术表达式(幂指数));计算幂级数;●Sqrt(算术表达式1);计算平方根;●●CalcEventDelay(EventName2 - EventName1)⏹功能:计算EventName1到EventName2之间的时延;⏹说明:EventName1和EventName2必须为事件类型;⏹计算方法:根据事件名称,取得事件类型ID,在日志库的EventDetail表中,分段计算EventName1对应的事件类型ID到EventName2对应的事件类型ID之间的时延,如果事件序列为:EventName1(Frame1),EventName2(Frame2), EventName1(Frame3), EventName1(Frame4),EventName2(Frame5),则此时只能得到2个时延值,即:Frame2(Testtime)- Frame1(Testtime)和Frame5(Testtime) - Frame4(Testtime); Frame3对应的EventName1,没有配套的EventName2,无法计算时延。
⏹计算结果:帧号取EventName2对应的帧号;●CalcEventIntervalDelay(EventName)⏹功能:计算两次EventName之间的时延;⏹说明:EventName必须为事件类型;⏹计算方法:根据事件名称,取得事件类型ID,在日志库的EventDetail表中,分段计算两次EventName事件之间的时延,⏹计算结果:帧号取后一次的帧号;●CalcIEValue(IE表字段的算术表达式)⏹功能:计算CounterIE表(实际上是日志库中IE表)字段的运算结果;⏹说明:IE表字段的算术表达式,其中的字段名称必须为CounterIE表的字段,允许为多个字段;作为特例,使用一个字段;⏹例子:CalcIEValue(BLER); CalcIEValue(SIR + PCCPCH_RSCP);⏹计算结果:帧号取对应的帧号;⏹特别说明:范围限定仍然使用[],例如:CalcIEValue(BLER)[SpeechFlag==1],表示取得业务为语音的BLER的值。
●CalcIEInterval()⏹分段计算两个IE数据帧之间的时延;⏹该函数一般后面附加条件;如不附加条件,则表示计算整个IE表首尾两帧的时间差;附加条件的例子:CalcIEInterval()[ServingPCCPCHRSCP>-116],CalcIEInterval()[CELLDCHMode==1];分段计算结果为满足条件的连续数据帧算成一段;⏹计算方法:根据条件,从满足条件的第一帧开始,至不满足条件的第一帧-1帧位置,计为一个分段;⏹计算结果:帧号取片段尾部对应的帧号;●CalcIEValueOnEvent(IE表字段的算术表达式,EventName,BeforeFlag,Duration)⏹功能:计算事件发生时前/后的某个IE的计算值;⏹说明:IE表字段的算术表达式:来自IE表的字段,允许使用Sum、dBSum、Count、Max、Min、Avg、dBAvg和加减乘除;EventName,为事件名称;BeforeFlag=1,表示事件发生前,0表示事件发生后;Duration为统计时长,单位为秒;⏹计算方法:根据事件,取得帧号,在IE表中,取该帧前/后Duration秒的数据,计算Field的统计值;⏹计算结果:帧号取事件对应的帧号;●CalcIEDist()⏹功能:分段计算两个IE数据帧之间的里程;⏹说明:该函数一般后面附加条件;如不附加条件,则表示计算整个IE表首尾两帧的里程;附加条件的例子:CalcIEDist()[ServingPCCPCHRSCP>-116],CalcIEDist()[CELLDCHMode==1];分段计算结果为满足条件的连续数据帧算成一段;⏹计算方法:根据条件,从满足条件的第一帧开始,至不满足条件的第一帧-1帧位置,计为一个分段;⏹计算结果:帧号取片段尾部对应的帧号;14、忽略书写空格;15、多语句分隔符:“;”;如果只有一个语句,且” Formula=”省略;为公式;如果” Formula=”未省略,表示KeyFieldValue字段信息采用约定;16、条件限定:使用中括号“[]”对;即形式为:算术表达式[逻辑表达式];17、分段函数格式:使用“{}”,中间用逗号分隔;如Formula={ Table1.Field1[(Field2 == X0)], (Table1.Field1 +Table1.Field4)[(Field5 == Y0)]},处理时取先满足条件的项;18、特定宏变量:__Any__,表示任意有效值;__FrameNo__,表示帧号;__This__19、关键字段及取值设置格式:KeyFieldValue= Table1.Field3[Field2 == Y0];(主键以及取值)书写格式示例:Formula=(EventDetail.TestTime[EventType == X0] –EventDetail.TestTime [EventType == Y0]);KeyFieldValue= EventDetail.FrameIdx[EventType == X0];针对前后数据帧的条件,如计算与上一帧的距离Formula=Dist(Bin.Lon[FrameIdx == __FrameNo__] , t[FrameIdx == (__FrameNo__)], Bin.Lon[FrameIdx == __FrameNo__-1] , t[FrameIdx == (__FrameNo__-1)]);__FrameNo__取值为1至Bin表中的最大帧数。
1.1.1.1.2 计算公式的词法分析可使用有限自动机的方法进行词法分析。
1.1.1.1.3 计算公式的语法分析进行语法分析根据计算公式的使用场景的不同,进行不同的处理。
使用场景:1)用户自定义字段的计算;2)KQI、KPI的计算公式、汇总公式;3)KQI、KPI、CounterIE的评价函数;语法分析:按下列各种情况处理:1、是否为同一个表的字段:1个、大于1个?2、整个语句中包含几个条件表达式:0个、1个、大于1个?3、有无使用SQL不支持的函数?4、包含几个语句:1个、2个?根据上述各点的不同取值,构造不同的SQL语句,如下处理:●如果字段属于同一个表,则SQL语句为形如:”select F1,F2,..Fn from TableName”;●如果字段不属于同一个表,则SQL语句为形如:”select T1.F1,T2.F2,..Tn.Fn fromT1,T2,..Tn”;●如果语句中不包含条件表达式:则相当于SQL没有where语句;●如果语句中包含1个条件表达式,则SQL语句附加一个where语句,即形如:” whereF1 = X0”;●如果语句中包含超过1个条件表达式,则按条件表达式拆分,每个条件表达式构造一个SQL语句,执行查询;最后合并查询结果,按查询项进行排序,然后根据条件项进行计算;●如果没有使用SQL不支持的函数,则SQL语句中可以包含所用函数名;●如果使用了SQL不支持的函数,则SQL语句需要将所有相关字段查询到,然后在本地计算;如两帧之间的距离Dist函数,需要将所有数据帧的经纬度查询到本地,本地使用Dist函数,●如果只有一个语句,则表示不关心主键;●如果有2个语句,则表示结果的存储,使用主键的值;1.1.1.1.4 计算公式的书写检查语法分析器,同时提供错误检查,可同时输出多个错误。