希望有人可以提供幫助,并且已經感謝誰愿意。嗨,我的資料框如下所示:
V1
A4 B1 C2 E3 T5
B3 R4 W2 E3
我的單詞被空格分隔,這樣看不太好,因此我嘗試做兩件事:1)用逗號分隔它們,但單詞之間的空格數并不總是相同,如果我使用 gsub似乎沒有解決問題,如果我這樣做
x$V1=gsub(" ",",",x$V1)
我得到:
V1
A4,B1,C2,,,,E3,,,,T5
B3,,,R4,,,,W2,E3
然后問題編號 2)我想要一個包含值數量的 V2 列,但是使用
x$V2 = length(strsplit(x$V1, ",")
沒有幫助:(我想要的輸出是:
V1 V2
A4,B1,C2,E3,T5 5
B3,R4,W2,E3 4
uj5u.com熱心網友回復:
一個可能的解決方案base R:
df$V1 = gsub("\\s ",",",df$V1)
df$V2 <- 1 lengths(regmatches(df$V1, gregexpr(",", df$V1)))
df
#> V1 V2
#> 1 A4,B1,C2,E3,T5 5
#> 2 B3,R4,W2,E3 4
另一種可能的解決方案,基于stringr:
library(tidyverse)
df %>%
mutate(V1 = str_replace_all(V1, "\\s ", ","), V2 = str_count(V1, ",") 1)
#> V1 V2
#> 1 A4,B1,C2,E3,T5 5
#> 2 B3,R4,W2,E3 4
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/488584.html
下一篇:提取損壞的字串
