You need to enable JavaScript to run this app. R语言生成填充随机整数的变量:为mtcars添加1-3区间随机整数的实现方法
优惠活动
大模型
产品
解决方案
定价
更多

R语言生成填充随机整数的变量:为mtcars添加1-3区间随机整数的实现方法

为mtcars添加1-3范围随机整数列的可落地实现方案

核心逻辑非常简单:生成与数据集行数完全等长的随机整数向量,再绑定为数据框的新列即可,全程不需要额外安装第三方依赖也能完成。

  • 基础R原生实现(无包依赖,通用场景首选)
    关键注意点:取值范围只有3个整数,但mtcars有32行,抽样时必须开启有放回模式,否则会直接触发参数报错。
    可直接运行的代码:
    # 可选设置随机种子,让生成的结果可复现
    set.seed(123)
    # 生成随机整数并赋值为新列
    mtcars$rand_int <- sample(x = 1:3, size = nrow(mtcars), replace = TRUE)
    
    运行完用head(mtcars)就能看到新增的rand_int列已经全部填充了1、2、3范围内的整数值。
  • tidyverse工作流适配实现
    如果日常用dplyr做数据清洗,可以结合管道写更连贯的代码,不需要手动计算数据集行数:
    library(dplyr)
    set.seed(123)
    mtcars <- mtcars %>% 
      mutate(rand_int = sample(1:3, size = n(), replace = TRUE))
    
    这里的n()会自动识别当前数据集的总行数,和手动写nrow(mtcars)效果完全一致。

实用小技巧:如果需要自定义三个随机值的出现概率,可以给sample()补充prob参数,比如写sample(1:3, size = nrow(mtcars), replace = TRUE, prob = c(0.5, 0.3, 0.2)),就代表1、2、3的出现概率分别为50%、30%、20%,可以根据需求自由调整。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.31 11:06:09