1 功能说明
对获取到的DataFrame数据集进行过滤操作,并将过滤后的数据返回。
注: 1.过滤处理的对象类型为DataFrame,支持单个或多个条件过滤;
2.数据过滤后的返回值依旧为DataFrame类型数据集。
2 基本使用说明
1) 将DataFrame数据传入到“表格”参数;例如将【读取Excel】组件返回的DataFrame传入“表格”参数中。
2)进入组件的属性描述窗口,点击“输入属性”后的“+”添加过滤条件,设置条件直接关系与过滤条件。
3)运行流程,在运行日志窗口打印的过滤后的数据。
3 参数配置说明
单一条件下的输出:
1)“产品类型”为“A1”。
2)“产品名称”为“name0002"。
3) 以上两个条件,“条件直接关系”设置为and。
4)“条件直接关系”设置为or。
3)条件设置栏中间的下拉框即为判断方法,默认为“==”,也就是等于,下面依次介绍这些方法: “ == ”:匹配指定列的内容中等于指定值的数据,例如匹配“产品名称”列中内容为“name0002”的数据。
“ > ”: 匹配指定列的内容中大于指定值的数据,如匹配“产品风险级别”列中内容大于5的数据。
“ >= ”: 匹配指定列的内容中大于或等于指定值的数据,如匹配“产品风险等级”列中内容大于等于5的数据。
“ < ”: 匹配指定列的内容中小于指定值的数据,如匹配“视频保存时长”列中内容小于6的数据。
“ <= ”: 匹配指定列的内容中小于或等于指定值的数据,如匹配“视频保存时长”列中内容小于或等于6的数据。
“ != ”: 匹配指定列的内容中不等于指定值的数据,如匹配“产品名称”列中内容不为“name0002”的数据。
“startswith”:匹配指定列的内容中以某个字符开头的数据,如匹配“产品代码”列中开头为“zs”的数据。
注意:如果筛选的列中有空值,则会抛出异常,需要进行过滤空值。
“ notna ”:匹配指定列的内容中不为空的数据,例如匹配“产品代码”列中内容不为空的记录。
也可应用于类似上例中,去除筛选列中的空值,避免抛出异常。
“ endswith ”:匹配指定列的内容中以某个字符结束的数据,如“产品代码”列中为“0002”结尾的记录。
同样,若是筛选的列中有空值,则会抛出异常,需要进行过滤空值。
“ match ”:比对指定列的内容中与正则表达式匹配的数据,注意筛选的列中不能有空值,否则会抛出异常;例如“产品代码”列中匹配符合'zs.*'正则表达式的数据。
“ isnull ”:匹配指定列的内容中为空的数据,例如匹配“产品代码”列中内容为空的记录。
“ isin ”:匹配指定列的内容中包含指定字符的数据,注意指定字符的内容需填写完全一致,写入列表输入,例如匹配“产品类型”列中内容为“A1”的记录。
指定字符不能直接输入,否则会抛出异常,提示需要传入一个list-like的对象数据。
4)实践操作
过滤掉以下表格中“产品代码”不是以“zs”开头,且“产品风险级别”大于5的数据。
1. 匹配以“zs”开头的数据,可以使用“startswith”这个方法。
2. “产品代码”列中有空值,所以要在“条件直接关系”为“and”的情况下再加一个去空值的条件。
3. 过滤掉”产品风险等级“大于5的数据。
4. 运行流程后得到过滤后的数据。