You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用dplyr实现Excel LEFT函数功能并返回整数类型

解决方案:用dplyr提取整数左侧三位并返回整数类型

嘿,这个需求很容易搞定,我给你两种实用的方法,都能通过dplyr::mutate完美实现你的目标:

方法1:字符处理法(通用型)

如果你的Occupation变量后续可能出现不同位数的数值,这种通用方法更稳妥。思路是先把整数转成字符,用substr提取前三位,再转回整数类型:

library(dplyr)

# 构造示例数据
sample_df <- tibble(Occupation = c(1111, 2112, 3117))

# 生成目标新变量
sample_df <- sample_df %>%
  mutate(Occupation_left3 = as.integer(substr(as.character(Occupation), start = 1, stop = 3)))

方法2:数学运算法(高效型)

既然你明确Occupation都是四位整数,直接用整数除法会更高效,不用来回转换字符类型:

sample_df <- sample_df %>%
  mutate(Occupation_left3 = Occupation %/% 10)

两种方法最终得到的Occupation_left3都是整数类型的111、211、311,完全符合你的预期。如果后续数值位数固定,优先选方法2;如果位数可能变化,方法1更灵活。

内容的提问来源于stack exchange,提问作者Ian_De_Oliveira

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 03:41:06