首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >尝试计算账龄,并在R中动态写入excel中新增的列

尝试计算账龄,并在R中动态写入excel中新增的列
EN

Stack Overflow用户
提问于 2020-12-18 12:11:34
回答 1查看 40关注 0票数 0

函数group_tenure正在运行,但无法在新列中写入“0-1天”等,以及筛选的值。这里的TodayNew是excel中具有账龄的列。

代码语言:javascript
运行
复制
group_tenure  <- function(TodayNew){
  if (TodayNew >= 0 & TodayNew <= 1){
     return ('0-1 Days')
  }else if(TodayNew > 1 & TodayNew <= 4){
    return('2-4 Days')
  }else if (TodayNew > 4 & TodayNew <= 7){
     return('5-7 Days')
  }else if (TodayNew > 7 & TodayNew <=15){
     return('8-15 Days')
  }else if (TodayNew > 15 & TodayNew <=30){
     return('16-30 Days')
  }else if (TodayNew > 30){
    return('More than 30 Days')
  }
}

如下所示显示group_tenure的值,但无法在新列中写入。

代码语言:javascript
运行
复制
group_tenure(1)
[1] "0-1 Days"
> group_tenure(2)
[1] "2-4 Days"
> group_tenure(5)
[1] "5-7 Days"
> group_tenure(8)
[1] "8-15 Days"
> group_tenure(16)
[1] "16-30 Days"
> group_tenure(31)
[1] "More than 30 Days"
EN

回答 1

Stack Overflow用户

发布于 2020-12-18 12:39:12

你的函数没有矢量化,所以如果我没看错的话,它就不是你可以在向量上调用的东西(例如,数据框列)。

代码语言:javascript
运行
复制
x <- c(1, 2, 5, 8, 16, 31)
group_tenure(x)
# Warning in if (TodayNew >= 0 & TodayNew <= 1) { :
#   the condition has length > 1 and only the first element will be used
# [1] "0-1 Days"

如果需要,那么可以使用

代码语言:javascript
运行
复制
Vectorize(group_tenure)(x)
# [1] "0-1 Days"          "2-4 Days"          "5-7 Days"          "8-15 Days"        
# [5] "16-30 Days"        "More than 30 Days"

或者向量化你的函数。在这里,一种有效的方法是使用cut

代码语言:javascript
运行
复制
group_tenure2 <- function(TodayNew) {
  as.character(
    cut(TodayNew, c(0, 1, 4, 7, 15, 30, Inf),
        labels = c("0-1 Days", "2-4 Days", "5-7 Days", "8-15 Days", "16-30 Days", "More than 30 Days"),
        include.lowest = TRUE)
  )
}
group_tenure2(x)
# [1] "0-1 Days"          "2-4 Days"          "5-7 Days"          "8-15 Days"        
# [5] "16-30 Days"        "More than 30 Days"
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65351707

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档