[英]R Split String By Delimiter in a column
我有一個包含幾行的文件。 例如
A B C
awer.ttp.net Code 554
abcd.ttp.net Code 747
asdf.ttp.net Part 554
xyz.ttp.net Part 747
我想使用 R 只拆分表的 A 列,我想將一個新列添加到表 D,其值為 awe、abcd、asdf 和 xyz。 希望使用 dplyr 完成此操作。
您可以使用mutate
和gsub
:
library(dplyr)
df = df %>% mutate(D=gsub("\\..*","",A))
A B C D
awer.ttp.net Code 554 awer
abcd.ttp.net Code 747 abcd
asdf.ttp.net Part 554 asdf
xyz.ttp.net Part 747 xyz
我們可以為此使用tidyverse
library(dplyr)
library(tidyr)
df1 %>%
separate(A, into = 'D', extra = 'drop', remove = FALSE) %>%
select(LETTERS[1:4])
# A B C D
#1 awer.ttp.net Code 554 awer
#2 abcd.ttp.net Code 747 abcd
#3 asdf.ttp.net Part 554 asdf
#4 xyz.ttp.net Part 747 xyz
首先我創建數據框:
library(dplyr)
data <-
data.frame(
A=c("awer.ttp.net","abcd.ttp.net", "asdf.ttp.net", "xyz.ttp.net"),
B=c("Code", "Code", "Part", "Part"),
C=c(554,747,554,747),
stringsAsFactors = F
)
然后以這種方式改變新列:
data %>%
mutate(
D = strsplit(A, "[.]") %>%
as.data.frame() %>%
t %>%
data.frame(stringsAsFactors = F) %>%
pull(1)
)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.