【问题标题】:Function to convert a number to a word in r programming [duplicate]在r编程中将数字转换为单词的函数[重复]
【发布时间】:2018-03-01 17:46:30
【问题描述】:

我有一个数据集,其中月份为 1,2,3,..12 所以我想把它们转换成 1-January, 2-February ,3-March 这样的词,所以请帮帮我。

【问题讨论】:

  • 查看month.abbmonth.name

标签: r


【解决方案1】:
> data <- c(12, 1, 4, 3, 4, 9, 10)
> month.name[data]
[1] "December"  "January"   "April"     "March"     "April"     "September" "October" 

不清楚你是否想要结果中的月份数,但如果你想要,你可以使用paste

> paste(data, month.name[data], sep = '-')
[1] "12-December" "1-January"   "4-April"     "3-March"     "4-April"     "9-September" "10-October" 

【讨论】:

    【解决方案2】:

    首先是一些可重复的数据(总是有用的)

    dat <- data.frame("X1" = sample(1:12, 20, replace = T))
    

    然后我会创建一个函数来执行您的要求(粘贴数字和名称):

    conv <- function(df, x){
        paste0(as.numeric(df[,x]), "-", month.name[as.numeric(df[,x])])
        }
    

    然后执行成功:

    dat$X2 <- conv(dat, "X1")
    

    还有输出

        > dat
           X1          X2
        1  12 12-December
        2   7      7-July
        3   9 9-September
        4   1   1-January
        5  12 12-December
        6   5       5-May
        7   3     3-March
        8   4     4-April
        9  12 12-December
        10  8    8-August
        11 11 11-November
        12  9 9-September
        13  1   1-January
        14  9 9-September
        15  6      6-June
        16  9 9-September
        17  4     4-April
        18  9 9-September
        19 10  10-October
        20  3     3-March
    

    【讨论】:

      猜你喜欢
      • 2020-04-26
      • 1970-01-01
      • 1970-01-01
      • 2020-02-17
      • 2011-02-13
      • 1970-01-01
      • 2010-10-02
      • 1970-01-01
      相关资源
      最近更新 更多