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

R语言中基于time列给数据框新建interval区间列的实现方法

R数据框新增区间字段实现方案

最简实现(基础R,仅需一行代码)

利用ceiling()向上取整的特性即可完美匹配你的分组规则:

df$interval <- ceiling(df$time / 10) * 10

运行后得到的结果如下:

timeinterval
7.110
8.210
9.310
10.420
11.520
12.620
50.960

完全符合你要求的区间映射逻辑:0.0-10.0(含10)对应10、10.1-20.0对应20,以此类推。

其他可选实现

如果后续你的区间规则变得更复杂(比如非等距区间、自定义区间名),可以用cut()函数实现:

# 根据数据最大值自动生成区间边界
max_break <- ceiling(max(df$time)/10)*10
df$interval <- as.numeric(as.character(
  cut(df$time, 
      breaks = seq(0, max_break, 10), 
      labels = seq(10, max_break, 10), 
      include.lowest = TRUE)
))

如果是tidyverse技术栈用户,也可以用dplyr的管道写法:

library(dplyr)
df <- df %>% 
  mutate(interval = ceiling(time/10)*10)

内容的提问来源于stack exchange,提问作者Jo-Achna

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 15:06:07