3UG045.TXT尝试为按fme_basename分组的250个文本文件生成字数列表,在180行(text_line_data)之后,循环中出现此错误:
listHistogramerExtractor_attributeCreator_4(teefactory):listHistogramerExtractor_attributeCreator_4:@tcl2--无法计算表达式“listHistogramerExtractor”attributeCreator_4_0794f8f3f3_f60b_4915_9438_12229fbdab5720_attrsetter{(价值 γ直方图 价值 循环计数 价值 , 价值 γ直方图 价值 循环计数 伯爵 )}'--fme_setattribute过程至少需要两个参数——属性名,它的价值,以及值的可选编码。
在聚合文件之前,将删除所有表单源。我还尝试删除不可打印的字符,使用ListStringReplacer查找regex:[\x00-\x1f\x80-\xff]。attributeCreator使用柱状图列表透视属性。这就是它失败的地方,我认为一个属性值(我现在无法识别)导致了这个问题。
日志中说了一个属性编码选项,但我不知道在哪里可以添加这个属性名表达式。
我尝试了@convertencoding(
更新:我开始做随机测试,一次一个文本文件,而所附的文本文件是迄今为止唯一引起这一问题的文件。完成所有文本文件的测试后,导致失败的文件有16个。
计算列表中的值的柱状图,并在该特性的新列表属性中返回这些值。将对新列表进行排序,使出现次数最多的值位于第一位。
someList 0.val='apple'someList 1.val='donut'someList 2.val='aardvark'someList 3.val='apple'someList 4.val='aardvark'someList 5.val='apple'
然后生成的功能将具有以下列表属性:
_柱状图0。value='apple''u柱状图0。count=3柱状图1。value='aardvark''u柱状图1。count=2柱状图2。value='donut''u柱状图2。count=1
柱状图名称可以更改,允许在一个功能上附加多个柱状图。
附加的工作区(见附件:listHistogrammerExample.fmwt)显示了列表柱状图变压器。
在这个例子中,用户需要计算一组分区数据中每种类型(分区)有多少个功能。这可以通过创建一个人工聚合和源数据列表并通过listHistogramer运行来实现。
工作区实际上更进一步,它有一个自定义的转换器,将柱状图转换为一组属性和值。
FME查看器中显示的数据显示有21个不同区域,具有(例如)14种区域类型的特性。