【问题标题】:R using special charactersR 使用特殊字符
【发布时间】:2017-03-06 19:32:45
【问题描述】:

我在数据集中有一列字符串(和 NA),其值如下所示:

"85min"  "1hr 19min"  "98min"  NA  "119min"  "105min"  NA  "1hr 30min"

我正在尝试将所有值更改为数字(以分钟为单位),以便这些值看起来像:

85  79  98  NA  119  105  NA  90

我试着分块做,先去掉“min”,然后去掉“hr”,然后把“1”改成“60”,然后把中间的空格改成加号,给我:

"85"  "60+19"  "98"  NA  "119"  "105"  NA  "60+30"

我希望通过应用 as.numeric,我可以将带有“+”号的那些变成公式,但结果却是 NA。

有没有进行这种转换的速记方法?非常感谢!

【问题讨论】:

标签: r


【解决方案1】:

是的,您需要parseeval

strings = c("85",  "60+19",  "98",  NA,  "119",  "105",  NA,  "60+30")
sapply(parse(text=strings), eval)
[1]  85  79  98  NA 119 105  NA  90

【讨论】:

  • 是的,这正是我想要的。非常感谢。我只希望我几天前问过...
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-06-10
  • 1970-01-01
  • 2014-11-03
  • 2017-03-21
相关资源
最近更新 更多