다른 큰 문자열에서 패턴/시퀀스를 검색하는 함수가 있는데, 발견되면 ITINA 그렇지 않으면 False를 반환합니다.
예시
Rk에 함수가 있지만 큰 계산에는 느리거나 오히려 다른 스타일로 작성된 여러 함수가 있습니다.....
두 문자열 모두 임의의 길이가 될 수 있으므로 입력 데이터는 다음과 같습니다.
dat <- sample(letters[1:20],size = 30,replace = T)
pat <- c('a',"c","g")
dat
[1] "h""c""q""a""s""a""d""b""c""n""a""t""e""q""s""k""j""t""l""j""n""t""r""m""h"
[26] "b""o""e""g""h"
pat
[1] "a""c""g"
질문이 있습니다 : PAT 데이터 입력 변수가 숫자 벡터 (지금처럼)와 문자열 벡터를 모두 허용하도록 만드는 방법은 무엇입니까?
추신 : 함수는 6 배만 빠른 것으로 밝혀졌습니다 (( 나는 적어도 100 배 더 빠를 것이라고 생각했습니다 ((((
microbenchmark::microbenchmark( yes_seq(pat,dat), yes_seq_cpp(pat,dat))
Unit: microseconds
expr min lq mean median uq max neval cld
yes_seq(pat, dat) 42.19343.33344.7871243.90345.0435106.052100 b
yes_seq_cpp(pat, dat) 5.7015.9876.619936.2726.842522.807100 a
오버로드를 위한 첫 번째 아이디어는 이름은 같지만 인수가 다른 다른 함수를 작성하는 것입니다. Rcpp에서 이 작업을 해본 적이 없어서 작동할지 모르겠습니다. 아마도 별도의 파일에 C 코드를 만들고 cppFunction() 대신 sourceCpp()를 사용해야 할 것입니다.
다른 큰 문자열에서 패턴/시퀀스를 검색하는 함수가 있는데, 발견되면 ITINA 그렇지 않으면 False를 반환합니다.
예시
Rk에 함수가 있지만 큰 계산에는 느리거나 오히려 다른 스타일로 작성된 여러 함수가 있습니다.....
두 문자열 모두 임의의 길이가 될 수 있으므로 입력 데이터는 다음과 같습니다.
다음은 표준 스타일로 작성된 첫 번째 s1 함수로, 명확하지만 번거롭습니다.
또는 좀 더 우아한 s2.
둘 다 같은 일을 합니다.
질문/요청이 있습니다 - 이 간단한 함수를 rcpp로 작성해 주실 수 있나요?
몇십 페이지 전에 레셰토프가 했던 것처럼요.
(라이브러리 때문이 아니라)
다른 큰 문자열에서 패턴 / 시퀀스를 검색하는 함수가 있는데, 발견되면 ITINA 그렇지 않으면 거짓입니다.
그림
Rk에 함수가 있지만 큰 계산에는 느리거나 오히려 다른 스타일로 작성된 함수가 여러 개 있습니다....
입력 데이터는 다음과 같으며 두 문자열 모두 임의의 길이가 될 수 있습니다.
다음은 표준 스타일로 작성된 첫 번째 s1 함수로, 명확하지만 번거롭습니다.
또는 s2처럼 좀 더 우아하게 작성할 수도 있습니다.
둘 다 같은 일을 합니다.
질문/요청이 있습니다 - 이 간단한 함수를 rcpp로 작성해 주실 수 있나요?
자유 시간이 없고 코딩과 디버깅을 별로 좋아하지 않기 때문에 아직 할 준비가 되지 않았습니다. 그리고 직접 알아내는 것이 더 유용 할 것입니다. 가능한 한 구체적인 기술적 질문에 답변해 드리겠습니다.
자유 시간이 없고 코딩과 디버깅을 별로 좋아하지 않아서 아직 시작할 준비가 되지 않았습니다. 그리고 직접 알아내는 것이 더 유용할 것입니다. 가능한 한 구체적인 기술적 질문에 답변해 드리겠습니다.
도와주지 않아서 고마워요) 제가 직접 알아냈습니다.)
R 코드
Rcpp 코드
질문이 있습니다 : PAT 데이터 입력 변수가 숫자 벡터 (지금처럼)와 문자열 벡터를 모두 허용하도록 만드는 방법은 무엇입니까?
추신 : 함수는 6 배만 빠른 것으로 밝혀졌습니다 (( 나는 적어도 100 배 더 빠를 것이라고 생각했습니다 ((((
도와주지 않아서 고마워요) 직접 알아냈고 훌륭합니다.)
R 코드
Rcpp 코드
지금처럼 숫자 벡터와 문자열 벡터를 모두 받아들이도록 하는 방법은 무엇인가요?
추신 : 함수는 6 배만 더 빠른 것으로 밝혀졌습니다 (( 적어도 100 배 더 빠를 것이라고 생각했습니다 ((((
R(컴파일)로 코드를 컴파일할 수 있습니다. 코드 속도가 거의 3배 빨라졌습니다.
for 대신 foreach를 사용하여 모든 커널을 로드합니다.
R 코드를 컴파일할 수 있습니다(컴파일). 코드 속도가 거의 3배 빨라졌습니다.
모든 커널을 로드할 때 for 대신 foreach를 사용합니다.
R 3.4 cmpfun 컴 파일은 모든 R 코드에 기본적으로 포함되어 있으므로
https://stackoverflow.com/questions/41502721/could-someone-explain-what-compiling-in-r-is-and-why-it-would-speed-up-this-cR 3.4 cmpfun 컴파일은 모든 R 코드에 기본적으로 포함되어 있기 때문입니다.
https:// stackoverflow.com/questions/41502721/could-someone-explain-what-compiling-in-r-is-and-why-it-would-speed-up-this-c이 게시물은 이제 패키지를 업데이트 할 때 항상 패키지를 컴파일하는 것처럼 보이는 것으로 이해합니다 , 라인 바이트 컴파일 및 지연 로딩을 위해 패키지를 준비하십시오.
그러나 나는 사용자 코드가 컴파일되지 않는다고 생각합니다. 우리는 소스별로 함수를로드하고 소스 설명에서로드 할 함수가 컴파일되는 것을 보지 못했습니다.
이 게시물은 이제 패키지를 업데이트 할 때 항상 패키지를 컴파일하는 것처럼 보입니다 , 라인 바이트 컴파일 및 지연 로딩을 위해 패키지를 준비 할 때 볼 수 있습니다 .
그러나 나는 사용자 코드가 컴파일되지 않는다고 생각합니다. 우리는 소스별로 함수를로드하고 소스 설명에서로드 할 함수가 컴파일되는 것을 보지 못했습니다.
흠, 나는 그것을 시도 할 것이다
지금처럼 숫자 벡터와 문자열 벡터를 모두 받아들이도록 하는 방법은 무엇인가요?
오버로드를 위한 첫 번째 아이디어는 이름은 같지만 인수가 다른 다른 함수를 작성하는 것입니다. Rcpp에서 이 작업을 해본 적이 없어서 작동할지 모르겠습니다. 아마도 별도의 파일에 C 코드를 만들고 cppFunction() 대신 sourceCpp()를 사용해야 할 것입니다.