2017-10-23 1 views
-1

데이터 프레임에서 행이 특정 문자로 시작하는 방법을 찾는 방법을 모르겠습니다.특정 문자로 시작하는 행 수를 찾는 방법은 무엇입니까?

예를 들면.

mtcars 
       mpg cyl disp hp drat wt ... 
Mazda RX4  21.0 6 160 110 3.90 2.62 ... 
Mazda RX4 Wag 21.0 6 160 110 3.90 2.88 ... 
Datsun 710 22.8 4 108 93 3.85 2.32 ... 

내가 얼마나 많은 자동차를 찾으려면 당신은

sum(startsWith(rownames(mtcars), "M")) 
# [1] 10 

다른 덜 효율적 가능성을 포함 할 수

답변

4

'M'

감사 편지로 시작

sum(grepl("^M", rownames(mtcars))) 
# [1] 10 
length(grep("^M", rownames(mtcars))) 
# [1] 10 
sum(regexpr("^M", rownames(mtcars)) == 1L) 
# [1] 10 
sum(substr(rownames(mtcars), 1, 1) == "M") 
# [1] 10 
0

Anothe 좋은 방법은 stringr 패키지를 사용하는 것입니다.

library(stringr) 
str_view(rownames(mtcars),'^M') # to see all results or 
str_view(rownames(mtcars),'^M', match = T) # to see only the match results 
관련 문제