[英]R - column from string in dplyr
我的 dataframe 看起來像這樣
x <-
data.frame(
id = c("123_1", "987_123")
)
我想通過 dplyr 變異 function 創建這個結果 dataframe。 我只想在下划線符號之前參加第一部分,在下划線符號之后參加另一部分。
result <-
data.frame(
id = c("123_1", "987_123"),
af = c("123", "987"),
ad = c("1", "123")
)
1) tidyverse像這樣separate
使用:
library(dplyr)
library(tidyr)
x %>%
separate(id, c("af", "ad"), remove = FALSE)
## id af ad
## 1 123_1 123 1
## 2 987_123 987 123
2) 底座 R
2a) read.table沒有任何包使用read.table
cbind(x, read.table(text = x$id, sep = "_", col.names = c("af", "ad"),
colClasses = "character"))
## id af ad
## 1 123_1 123 1
## 2 987_123 987 123
2b) sub或使用sub
:
transform(x, af = sub("_.*", "", id), ad = sub(".*_", "", id))
## id af ad
## 1 123_1 123 1
## 2 987_123 987 123
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.