搜尋感興趣的網誌

所有文章連結

2022年3月29日 星期二

R Packages stringr - str_replace | R包stringr - str_replace

 



str_replace替換掉原始字串的模式,替換的方式有很多選擇,除了正則表達式之外,甚至能將原始字串更改為NA值、變更大小寫、修改為符號等等,操作上會是個很有趣的函數


基本語法

str_replace(dataset$string, 替換的字元或字串)

str_replace_all(dataset$string, 替換的字元或字串)


可用參數

NA_character_ >> 將字符變更為NA



創建數據框進行替換操作

# 創建數據框
stringr_df <- tibble(animal = c("dog", "cat", "rat", "fish"))

# 輸出結果
r$> stringr_df # A tibble: 4 x 1 animal <chr> 1 dog 2 cat 3 rat 4 fish


文字替換為符號,若不是加了all函數,只會變更第一個遇到的字母

# 文字變更為符號
str_replace(stringr_df$animal, "[oati]", "=")

# 輸出結果
r$> str_replace(stringr_df$animal, "[oati]", "=") [1] "d=g" "c=t" "r=t" "f=sh"


# 文字變更為符號
str_replace_all(stringr_df$animal, "[oati]", "=")

# 輸出結果
r$> str_replace_all(stringr_df$animal, "[oati]", "=") [1] "d=g" "c==" "r==" "f=sh"


文字變更文字,dog >> pig

# 文字變更為文字
str_replace(stringr_df$animal, "do", "pi")

# 輸出結果
r$> str_replace(stringr_df$animal, "do", "pi") [1] "pig" "cat" "rat" "fish"


將指定字元所屬字串變更為NA值

# 將"a"所屬字串變更為NA
str_replace(stringr_df$animal, "a", NA_character_)

# 輸出結果
r$> str_replace(stringr_df$animal, "a", NA_character_) [1] "dog" NA NA "fish"


變更大小寫

# 範圍內字元變更為大寫
str_replace(stringr_df$animal, "[oatig]", toupper)

# 輸出結果
r$> str_replace(stringr_df$animal, "[oatig]", toupper) [1] "dOg" "cAt" "rAt" "fIsh"


# 開頭變更為大寫
str_replace(stringr_df$animal, "^[a-z]", toupper)

# 輸出結果
r$> str_replace(stringr_df$animal, "^[a-z]", toupper) [1] "Dog" "Cat" "Rat" "Fish"


# 所有文字變更大寫
str_replace(stringr_df$animal, "[a-z]+", toupper)

# 輸出結果
r$> str_replace(stringr_df$animal, "[a-z]+", toupper) [1] "DOG" "CAT" "RAT" "FISH"

沒有留言:

張貼留言

其他文章

看看精選文章

納希克房價分析 | Nashik Apartment Price Analyze – 語法解析(上)

  這次 Nashik 的房價分析有上傳至 Kaggle ,有興趣的朋友可以前往閱覽, RMarkdown PDF 報告存放在 Google 雲端,程式碼則是存放於 Github ,照慣例會分享好用的函式語法,雖說基本的 Packages 與語法可能很多人都會完整的閱覽,但是實際...