str_count用來計算出現的頻率,可以檢查單一字元或字串,以下就來進行簡單的操作
基本語法
str_count(dataset$string, 檢查的字元或字串)
有幾點要注意一下
- " " >> 準確查找,也就是AND,完全符合才行
- "[ ]" >> 模糊查找,也就是OR,部分符合即可
- 小寫與大寫判斷為不同字元,需要完全確定大小寫
建立字串數據框用來計算
# 建立數據框
tringr_df <- tibble(
weekday = c("Sunday", "Monday", "Tuesday", "Wednesday",
"Thursday", "Friday", "Saturday")
)
# 輸出結果
r$> stringr_df
# A tibble: 7 x 1
weekday
<chr>
1 Sunday
2 Monday
3 Tuesday
4 Wednesday
5 Thursday
6 Friday
7 Saturday
來計算字元出現的次數
# 檢查"d"在各字串出現的數量
str_count(stringr_df$weekday, "d")
# 輸出結果
r$> str_count(stringr_df$weekday, "d")
[1] 1 1 1 2 1 1 1
注意的是計算時的規則與str_detect相同,單純使用" "則為AND,使用範圍[ ]則是OR,以下進行測試,先以不連續字串進行計算,不連續字串"ry"時一開始計算為0,計算方式是將"ry"作為一整個計算項目,若是範圍則是只要單一字元出現就計算一次
# 以不連續字串"ry"計算
str_count(stringr_df$weekday, "ry")
# 輸出結果
r$> str_count(stringr_df$weekday, "ry")
[1] 0 0 0 0 0 0 0
# 以不連續字串"[ry]"計算
str_count(stringr_df$weekday, "[ry]")
# 輸出結果
r$> str_count(stringr_df$weekday, "[ry]")
[1] 1 1 1 1 2 2 2
連續字串進行計算
# 以連續字串"day"計算
str_count(stringr_df$weekday, "day")
# 輸出結果
r$> str_count(stringr_df$weekday, "day")
[1] 1 1 1 1 1 1 1
# 以連續字串"[day]"計算
str_count(stringr_df$weekday, "[day]")
# 輸出結果
r$> str_count(stringr_df$weekday, "[day]")
[1] 3 3 3 4 3 3 4
沒有留言:
張貼留言