在Rstudio中将具有混合字符和数字的单列更改为仅数字

时间:2019-06-12 13:23:09

标签: r dplyr

我正在为一个需要使用Rstudio进行数据分析的学校项目。 我们有一些带有一个字符和数字的列。我们正在尝试将其更改为仅数字。仅供参考:我们不是任何编程语言的资深用户。

例如: 我们有一个包含以下变量的数据集: 时期-TPeriod-品牌等 尽管Tperiod都是数字形式,但期间和品牌都没有。它们每个都包含一个字母。 例如: 期 b20160399992(表示2016年3月)

品牌 b007(表示品牌名称) (共有56个品牌,它们遵循相同的顺序-b001至b056)

我们要更改品牌列或为品牌列设置关键字,以便我们可以将b007仅用作7。

我们认为将其更改为7,就可以将它们与销售单位/价格等进行比较。

如果有人可以提供帮助,将不胜感激。

谢谢

我们尝试使用dplyr,但无法继续使用。 同样,我们没有任何编程语言的经验,因为我们只是学习R进行数据分析。

1 个答案:

答案 0 :(得分:0)

这是一个两步过程(尽管为方便起见可以将它们组合在一起)。

首先,您需要删除变量中的substring,以除去不需要的字符,对于Brand变量,这是第一个字符。

然后您要将其转换为numeric

假设您的数据帧称为df,则可以通过获取变量的子字符串并将其转换为数字来实现。

library(dplyr)

df <- df %>%
      mutate(brand_numeric = as.numeric(substr(Brand, 2)))

这是一个常见问题,您应该养成先在论坛中搜索解决方案的习惯。