栏目分类:
子分类:
返回
终身学习网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
终身学习网 > IT > 软件开发 > 后端开发 > Ruby开发

R语言:给数据帧中某列长度小于4的值,全部在前面以0补齐

Ruby开发 更新时间:发布时间: 百科书网 趣学号

R语言:给数据帧中某列长度小于4的值,全部在前面以0补齐
1.生成数据帧data

data <- data.frame(
    gender = c("Male", "Male","Female"), 
    height = c(152, 171.5, 165), 
    weight = c(81,93, 78),
    SPEED =c(1242,38,2622)
  )

运行的结果为:

data

gender height weight SPEED
1 Male 152.0 81 1242
2 Male 171.5 93 38
3 Female 165.0 78 2622

2.自定义补齐函数

若长度小于4,在记录前面以0补齐
new.function <- function(x){
  while(nchar(x)<4){
    temp <- paste(0,x)
    x <- temp
    x <- gsub(" ","",x)
  }
  return(x)
}

3.执行补齐,并且替换原数据帧

data$SPEED <-lapply(data$SPEED,new.function)

data

最终运行

data
gender height weight SPEED
1 Male 152.0 81 1242
2 Male 171.5 93 0038
3 Female 165.0 78 2622


data$SPEED[which(nchar(data$SPEED)<4)] <-1000 #这个是把长度小于4的,全部替换为1000.在此记录一下

转载请注明:文章转载自 www.051e.com
本文地址:http://www.051e.com/it/226427.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 ©2023-2025 051e.com

ICP备案号:京ICP备12030808号