2017-11-06 18 views
0

나는 R의 RISmed 패키지에 여러 다른 용어 검색을 수행하려고에서 "EUtilisSUmmary"클래스는 다음과 같이하도록 방법 :는 "목록"을 변환하는 R

library(RISmed) 
library(rentrez) 
library(dplyr) 
search_topic<-c("KRAS AND MEK inhibitor","BRAF AND BRAF inhibitor") 
search_query <- lapply((search_topic),EUtilsSummary, retmax=50, 
mindate=2000, maxdate=2017) 

검색 쿼리 목록입니다 내 다음 단계는 검색어로 얻은 Pubmed ID를 가져 오는 것입니다. 그러나, 내가 사용하려고하면 나는를 QueryID이 EUtilisSummary 클래스 따라서를 QueryID 기능이 작동하지 않는 경우에 작동 이해

error:unable to find an inherited method for function ‘QueryId’ for signature ‘"list"’ 

을 얻을

QueryId(search_query) 

사용하여 얻을. 나는

as(search_query, "EUtilisSummary", strict=TRUE, ext)

를 사용하여 변환 시도하지만 실패하고 오류는 다음과 같습니다

no method or default for coercing “list” to “EUtilisSummary”.

이 목록 개체를 EUtilisSummary 클래스로 변환하려면 어떻게해야합니까? 미리 감사드립니다!

답변

0

는 lapply EUtilsSummary class(search_query[[1]]) 클래스의 객체를 포함하는리스트 (class(search_query)는이 경우에 search_query

library(RISmed) 
library(rentrez) 
library(dplyr) 
search_topic <- c("KRAS AND MEK inhibitor","BRAF AND BRAF inhibitor") 
search_query <- lapply((search_topic),EUtilsSummary, retmax=50, 
         mindate=2000, maxdate=2017) 

라는 함수가 정의 된 클래스와 오브젝트의리스트를 반환한다.

lapply(search_query, QueryId) 
#output: 
[[1]] 
[1] "29079711" "29067643" "28982179" "28982154" "28957417" "28938614" "28866094" "28807001" "28797845" "28783173" 
[11] "28775144" "28746882" "28619758" "28581516" "28574828" "28554329" "28551618" "28492898" "28459468" "28372922" 
[21] "28301591" "28248226" "28215705" "28178529" "28167505" "28154798" "28152546" "28062115" "28060183" "28002807" 
[31] "27997540" "27922010" "27876675" "27846317" "27834733" "27822414" "27821484" "27803104" "27793696" "27167191" 
[41] "27733477" "27699948" "27670374" "27496137" "27484466" "27469379" "27467210" "27441499" "27422710" "27399335" 

[[2]] 
[1] "29100459" "29098416" "29096034" "29094484" "29085667" "29084636" "29079332" "29074209" "29072975" "29070145" 
[11] "29066909" "29059158" "29054724" "29050517" "29050239" "29050218" "29048432" "29043205" "29040023" "29028954" 
[21] "29028788" "28994264" "28991513" "28986666" "28984520" "28984291" "28984141" "28982601" "28982154" "28981385" 
[31] "28979142" "28978720" "28976960" "28973166" "28963969" "28963614" "28961465" "28960564" "28959611" "28951457" 
[41] "28947956" "28939558" "28936920" "28931905" "28923537" "28923400" "28919996" "28918496" "28915798" "28893027" 
:

하나 그냥 인수로를 취할 수있는 기능을 다른 lapply를 사용할 수있는 목록에서 이러한 개체를 조작하려면