循环文件错误?
你好,
我试图使用循环文件操作符并追加一系列。csv文件。然而,当尝试追加时,我得到一个错误消息,属性'Telephone1'在我的所有文件中没有相同的数据类型,这是正确的(在某些情况下它是标称的,而在其他情况下是实际值)。因此,我在循环文件中添加了'parse numbers'操作符,以更改'Telephone1'的数据类型,但是当我这样做时,我得到了一个错误,该属性不存在。
-我已经检查了断点,但属性确实存在于每个上传的.csv文件中
-如果尝试,如果有某种空格后的变量可能导致的问题,这不是情况(即使我从我的结果视图复制属性名称,我得到同样的错误)。
-我尝试使用其他操作符来查看它们是否有效:如果我使用'Telephone1' RM做'选择属性',则不会给出错误消息,属性是选择并给出有效输出,但是,如果我使用分支操作符(以及其中的解析数字),因为我只想解析数字,如果'Telephone1'被识别为标称值,它也不起作用。
有人知道是什么问题吗?我在下面包含了我的XML。
< /操作符>
> < /过程
< /操作符>
<过程扩展= " true " >
<枚举关键= "参数" / >
< /操作符>
<列出关键= " filters_list " >
< / >列表
< /操作符>
< /操作符>
<列出关键= " function_descriptions " >
< / >列表
< /操作符>
<列出关键= " key_attributes " >
< / >列表
< /操作符>
<列出关键= " filters_list " >
< / >列表
< /操作符>
< /操作符>
> < /过程
<过程扩展= " true " >
> < /过程
< /操作符>
<过程扩展= " true " >
<过程扩展= " true " >
> < /过程
< /操作符>
<过程扩展= " true " >
> < /过程
< /操作符>
<过程扩展= " true " >
> < /过程
< /操作符>
> < /过程
<过程扩展= " true " >
> < /过程
< /操作符>
> < /过程
< /操作符>
> < /过程
最佳答案
-
sgenzer 12管理员,版主,员工,RapidMiner认证分析师,社区经理,成员,大学教授,PM版主职位:2959年社区经理
嗨@lghansse-是的,我知道怎么回事了。所以你的Read CSV上的参数设置没有超过默认值,所以RapidMiner正在查看电话1,看到它是数字,使它成为Real。Parse Numbers只查找标称/多标称属性,所以说它找不到任何东西。
解决方法是在Read CSV操作符中正确设置元数据。请看下面我的过程。
<?xml version="1.0" encoding="UTF-8"?> <过程version = " 8.0.001”>
> <上下文
<输入/ >
<输出/ >
<宏/ >
> < /上下文
<过程扩展= " true " >
<列出关键= "宏" >
< / >列表机构详情
< /操作符>0:完全可操作的实时数据<br>1:表中的历史数据,为了在新系统中未处理的完整数据
< /操作符>
<过程扩展= " true " >
<列出关键= "注释" >
< / >列表
<列出关键= " data_set_meta_data_information " >
< / >列表
< /操作符>
<列出关键= " function_descriptions " >
< / >列表
< /操作符>
< /操作符>
> < /过程获取机构SFTP数据
< /操作符>
<过程扩展= " true " >
<枚举关键= "参数" / >
< /操作符>
<列出关键= " filters_list " >
< / >列表
< /操作符>
< /操作符>
<列出关键= " function_descriptions " >
< / >列表
< /操作符>
<列出关键= " key_attributes " >
< / >列表
< /操作符>
<列出关键= " filters_list " >
< / >列表
< /操作符>
< /操作符>
> < /过程
<过程扩展= " true " >
> < /过程1:检查是否已经上传并只带走未上传的文件。<br>2:不检查并带走所有文件
< /操作符>
<过程扩展= " true " >
<过程扩展= " true " >
> < /过程清理来自streetimport的一些数据问题
< /操作符>
<过程扩展= " true " >
> < /过程
< /操作符>
<过程扩展= " true " >
> < /过程
< /操作符>
> < /过程
<过程扩展= " true " >
> < /过程清除streetimport中的数据,仅当它是新数据
< /操作符>获取和处理我们从代理处获得的streettimport文件 从代理机构上传 预处理 加载到RMserver
> < /过程
< /操作符>
> < /过程斯科特
1
答案
嗨@lghansse,
您是否可以验证您的XML代码,似乎代码的某些部分丢失了。当然,要复制整个XML代码:
-单击XML面板
-控制+一个(确保复制了整个XML代码)Control + C,
你也能分享一些你的。csv文件吗?
问候,
莱昂内尔
对不起,复制时遗漏了XML的某些部分。这应该是正确的。我真的不能上传。csv文件,因为它们包含个人数据。我在我的一个文件中包含了一个匿名的例子。
<?xml version="1.0" encoding="UTF-8"?> <过程version = " 7.5.003”>
机构详情
0:完全可操作的实时数据<br>1:表中的历史数据,为了在新系统中未处理的完整数据
获取机构SFTP数据
1:检查是否已经上传并只带走未上传的文件。<br>2:不检查并带走所有文件
清理来自streetimport的一些数据问题
清除streetimport中的数据,仅当它是新数据
获取和处理我们从代理处获得的streettimport文件
从代理机构上传
预处理
加载到RMserver
> <上下文
<输入/ >
<输出/ >
<宏/ >
> < /上下文
<过程扩展= " true " >
<列出关键= "宏" >
< / >列表
< /操作符>
< /操作符>
<过程扩展= " true " >
<列出关键= "注释" / >
<列出关键= " data_set_meta_data_information " / >
< /操作符>
<列出关键= " function_descriptions " >
< / >列表
< /操作符>
< /操作符>
> < /过程
< /操作符>
<过程扩展= " true " >
<枚举关键= "参数" / >
< /操作符>
<列出关键= " filters_list " >
< / >列表
< /操作符>
< /操作符>
<列出关键= " function_descriptions " >
< / >列表
< /操作符>
<列出关键= " key_attributes " >
< / >列表
< /操作符>
<列出关键= " filters_list " >
< / >列表
< /操作符>
< /操作符>
> < /过程
<过程扩展= " true " >
> < /过程
< /操作符>
<过程扩展= " true " >
<过程扩展= " true " >
> < /过程
< /操作符>
<过程扩展= " true " >
> < /过程
< /操作符>
<过程扩展= " true " >
> < /过程
< /操作符>
> < /过程
<过程扩展= " true " >
> < /过程
< /操作符>
> < /过程
< /操作符>
> < /过程
嗨@lghansse-欢迎来到社区。这只是一个友好的提醒,在您发送代码时也要使用>按钮。它把柱子清理干净,不转;)变成了笑脸符号。
斯科特
嗨@lghansse,
我不能重复你的错误。
我通过选择“Telephone 1”作为标称来导入您的csv文件,然后我写入文件:data2.csv
当我启动该进程时,可以很好地添加data1.csv(以'telephone 1'为实值)和data2.csv(以'telephone 2'为标称值),没有错误。
一个可能的轨道:试试循环文件(高级)的操作员手提钻扩展.
问候,
莱昂内尔
@sgenzer谢谢你的帮助!