去除字段前后字符

1. 概述

1.1 应用场景

数据清洗,就是按照一定的规则清理脏数据,以确保后续分析结果的准确性。

例如,一些订单信息表中,对于销售额、利润等字段会包含货币符号「¥」,想要将字符清除掉进行一些其他的运算。

1.2 实现思路

  • 先用 LEFT 函数截取第一位返回值,与( 符号进行比较。
  • 如果字符中的第一个字符为(,那么就需要使用 SUBSTITUTE 函数替换字段中的 (、)、¥内容,并使用 CONCATENATE 函数拼接「-」负号字符;
  • 如果字符中的第一个字符不是(,那么就使用 SUBSTITUTE 函数替换字段中的 ¥内容;
  • 最后使用 TONUMBER 函数将结果转换成数值类型。

2. 示例

2.1 创建分析表

下载并上传示例数据,将数据保存在项目中,点击「创建分析表」,如下图所示:

2.2 处理数据

1)点击「+>新增字段>公式」,如下图所示:

2)新增字段命名为「数据清洗」,输入公式:TONUMBER(if(left([利润],1)="(",CONCATENATE("-",SUBSTITUTE(SUBSTITUTE(SUBSTITUTE([利润],"(",""),")",""),"¥","")),SUBSTITUTE([利润],"¥",""))),点击「确定」,如下图所示:

公式说明:

公式

说明

SUBSTITUTE([利润],"(","")

将「利润」字段中的( 去掉

SUBSTITUTE(SUBSTITUTE([利润],"(",""),")","")

将「利润」字段中的 )去掉

SUBSTITUTE(SUBSTITUTE(SUBSTITUTE([利润],"(",""),")",""),"¥","")

将「利润」字段中的 ¥ 去掉

SUBSTITUTE([利润],"¥","")

将「利润」字段中的 ¥ 去掉

if(left([利润],1)="(",CONCATENATE("-",SUBSTITUTE(SUBSTITUTE(SUBSTITUTE([利润],"(",""),")",""),"¥","")),SUBSTITUTE([利润],"¥",""))

如果「利润」字段的第一个字符为( ,那么就将( )以及¥去掉,并和 - 拼接;

如果「利润」字段的第一个字符不是(,那么就直接去掉 ¥

TONUMBER( )

将结果从文本类型转换成数值类型

2.3 实现效果

点击「确定」后可以看到处理好的数据,如下图所示:

3. 更多内容

上述是对数字进行清洗,还有一些其他的场景。比如:

需求

清洗前的数据

清洗后的数据

如何实现?

首字母转大写,其他小写

BEIJING TECHNOLOGY CO.,LTD

beijing technology co.,ltd

Beijing Technology Co.,Ltd

去除本文中的()、【】、[]

[1] xxxxxx

【1】xxxxxx

xxxxxx

以【1】为例:

  • 可以使用字段拆列根据】先拆分成两列,再删除不需要的那一列;
  • 可以组合使用 RIGHT 和 LENB 函数,比如:RIGHT(字段,LENB(字段)-3),获取】右边的字符。

文档内容是否对您有帮助?
有帮助
没帮助没帮助
如需获取即时帮助,请联系技术支持
咨询
扫码领取100+零代码资料简道云官方微信号400-111-0890
图标在线咨询
立即体验