使用R中另一列中的元素的第一个元素创建一个新的dataframe列

时间:2018-10-07 10:21:42

标签: r dataframe

我想在我的数据框中创建一个新列,使其由同一数据框中另一列中的元素的第一个元素(或2个元素)形成。例如

   columnA
1   "1234"
2   "9876"
3   "4567"

变成:

   columnA    columnB
1   "1234"       "12"
2   "9876"       "98"
3   "4567"       "45"

我尝试使用dplyr库,如下所示:

dataframe %>%
    mutate( columnB = columnA[1:2] )

但这是在尝试检索前两行。

如果任何人都知道可以快速执行此操作(最好使用dplyr库),我将不胜感激。预先感谢。

1 个答案:

答案 0 :(得分:1)

df <- data.frame(columnA=c("1234","9876","4567"))
df$columnB <- substr(df$columnA,1,2)           
 #   columnA columnB
 # 1    1234      12
 # 2    9876      98
 # 3    4567      45 

如果您想使用dplyr

df <- df %>% mutate(columnB = substr(columnA,1,2))