首页 > 解决方案 > 使用 sqldf 删除列中的前两个字符

问题描述

我有一个如下数据集:

df
      ColA     ColB
-_jdn-endm        6
-_mek-emdn        5

预期产出

      ColA     ColB     New_col
-_jdn-endm        6    jdn-endm
-_mek-emdn        5    mek-emdn

我想从 ColA 中删除前两个字符。

我试过这个,即使它看起来正确,我也得到了一个语法错误:

library(sqldf)
df<- sqldf("SELECT RIGHT([ColA], LEN(ColA]) - 2) [New_col] FROM df")

Error in result_create(conn@ptr, statement) : near "(": syntax error

知道我可能做错了什么吗?

标签: rsqldf

解决方案


使用substr提取字符 3 开始。

sqldf("select *, substr(Col_A, 3) as newCol from df")

推荐阅读