找文章 / 找答案
精选问答 更多内容

[常用脚本] 字符函数报错

yunzi白银一 显示全部楼层 发表于 2022-10-24 18:14:19 |阅读模式 打印 上一主题 下一主题
1
已解决

【常用脚本】 字符函数报错

  • yunzi白银一
  • 2022-10-24 18:14:19
  • 发布在 论坛
3245 11
想对银行数据进行清洗,但按以下方式写新的计算列报错,向大佬们请教,看看是哪的问题:

var str = col['银行']
case
when (find(str,'工行') >0) then replace(str,'工行','工商银行')
when (find(str,'交行') >0) then replace(str,'交行','交通银行')
when (find(str,'建行') >0) then replace(str,'建行','建设银行')
when (find(str,'农行') >0) then replace(str,'农行','农业银行')
else str
end

最佳答案

社区管理员
yhdata_yzm 关注Ta

2022-10-24 18:14:20

可以跑出来啊,你看看是不是那里写错了
查看完整内容
回复

使用道具 举报

精彩评论11

yhdata_yzm 显示全部楼层 发表于 2022-10-24 18:14:20
yunzi 发表于 2022-10-25 13:50
谢谢回复。
你那边能跑出来吗?
我这边尝试报语法错误:

可以跑出来啊,你看看是不是那里写错了
回复

使用道具 举报

yhdata_yzm 显示全部楼层 发表于 2022-10-24 19:00:28
报什么错
回复

使用道具 举报

yunzi白银一 显示全部楼层 发表于 2022-10-25 09:04:38
回复

使用道具 举报

yhdata_yzm 显示全部楼层 发表于 2022-10-25 09:55:07

写法做了呗,你是想把工行替换成工商银行之类的对吧
回复

使用道具 举报

yhdata_yzm 显示全部楼层 发表于 2022-10-25 09:58:59
case col['省份'] when '四川' then '四川省'
end
回复

使用道具 举报

yunzi白银一 显示全部楼层 发表于 2022-10-25 10:06:03
yhdata_yzm 发表于 2022-10-25 09:58
case col['省份'] when '四川' then '四川省'
end

谢谢!
这个方向我知道的,在数据集代码里用LIKE也能实现。
但这一步我主要是想做数据清洗,下一步才做分类(因为有很多小银行,无法一个个地写,只能做字符串截取)
回复

使用道具 举报

yhdata_lyaa 显示全部楼层 发表于 2022-10-25 10:18:03
case语句后面需要接表达式,再接when子句
回复

使用道具 举报

yunzi白银一 显示全部楼层 发表于 2022-10-25 10:37:23
yhdata_lyaa 发表于 2022-10-25 10:18
case语句后面需要接表达式,再接when子句

测试过先加字段,再接when,也是同样的报错
回复

使用道具 举报

yhdata_yzm 显示全部楼层 发表于 2022-10-25 10:59:43
yunzi 发表于 2022-10-25 10:37
测试过先加字段,再接when,也是同样的报错

你试试这个可以清洗出来不
if(indexOf(col['产品名称'],'咖啡')!=-1)
then replace(col['产品名称'],'咖啡','都是咖啡')
end
回复

使用道具 举报

高级模式
您需要登录后才可以回帖 登录 | 免费注册

  • 官方微信

    欢迎关注永洪服务号!收费为0,价值无限

    扫码关注
  • 新浪微博

    让每位用户轻松挖掘数据价值!

    访问新浪微博
  • 智能客服
50W

会员等你来哦

Copyright   ©2012-2024  北京永洪商智科技有限公司  (京ICP备12050607) 京公网安备110110802011451号 |《永洪社区协议》
返回顶部