OHDSI Home | Forums | Wiki | Github

Athena vocabularies 다운 후 불러오기 in R

안녕하세요.
CDM을 배우고 있는 중입니다.
CDM의 concept ID와 심평원 수가코드(EDI코드)와 매칭을 하고자합니다.
대상 concept의 심평원 수가코드가 약 20,000개가 넘어서 수동으로 Athena에서 concpet ID를 찾아서 입력하는 건 불가능하여 Athena vocabularies 다운 받았습니다.

첫째, Stnadard에 해당하는 모든 vocabularies( CDM concept ID와 NAME 등등이 정리된 자료) 를 받을수 있을런지요?
Athena에서 다운이 되긴되는데 전체는 안되고 특정 조건에 해당하는 것만 받을 수 있더라구요…

둘째, 탭과 여백으로 구분되어진 Athena vocabularies 파일을 다운받은 다음 R로 불러오는 방법이 궁급합니다.
Athena에서 다운받으면 csv파일이긴한데, 막상 R로 불러오면 header(변수명)과 세부 항목의 개수가 일치하지않아 불러오는것이 어렵습니다. 데이터의 구분을 여백과 tab으로 섞여있고 변수명과 세부항목도 여백을 사용하고 있어서 불러오기할 때 구분을 어떻게해야할지 도무지 감이 잡히지않습니다.
혹시 Athena 목록을 R로 불러들일 때 사용하시는 명령어 가 있으신지요?

감사합니다.

안녕하세요,

정확히 어떤 vocabulary가 더 필요하실까요? 공개되어 있는 모든 vocabulary를 ATHENA에서 다운받을 수 있는 것으로 알고 있습니다.

Athena에서 받은 csv를 자동으로 DB에 입력하기 위한 package를 만들고 있는데, 아직 개발 중으로 사용시 에러 발생할 수 있습니다. 개발 중인 package는 GitHub에서 받아서 사용해보실 수 있습니다.

빠른 답변 감사드립니다. ^^

  1. 정확히 어떤 vocabulary가 더 필요하실까요? 공개되어 있는 모든 vocabulary를 ATHENA에서 다운받을 수 있는 것으로 알고 있습니다.
    -> procedure - SNOMED - standard 에 해당하는 CDM concept ID를 csv파일이나 엑셀파일로 받고 싶습니다. 그래야 EDI(심평원수가코드)와 매칭해서 값을 찾아 낼 수 있을 것같습니다.
    -> 공개되어 있는데 위의 말씀드린 전체를 다운받을 수 없고 특정조건 (예를 들어 “cancer”)을 입력한 다음 다운 받을수 있더라구요.

  2. Athena에서 받은 csv를 어떻게 보거나 활용할 수 있나요?
    -> 문제는 다운받은 csv형태이긴한데 이건 자료의 구분이 탭, 여백등으로 데이터들이 뒤섞여있어서 어떤 프로그램을 쓰더라도 활용을 못하겠더라구요. 이거 어떻게 써야하나요?

감사합니다.

안녕하세요.

Athena 홈페이지 우측 상단에 DOWNLOAD를 누루시면 전체 vocabulary를 다운 받으실 수 있습니다.

아래 링크도 함께 남겨드립니다.

http://athena.ohdsi.org/vocabulary/list

다운 받으신 vocabulary를 database에 올려서 사용하시는 것도 고려해보시면 좋을 것 같습니다.

1 Like

감사합니다. 선생님.
저는 다운받은 파일을 이용해서 다른 작업을 하고자 하는데 이걸 제대로 불러올 방법이 없더라구요. 그래서 고민입니다.
그런데 선생님 제가 문외한이라서 "database에 올려서 사용한다는 것"이 어떻게 하는건가요?

답변 감사드립니다.

데이터베이스는 데이터를 저장하고 관리할 수 있는 툴이라고 생각하시면 이해가 쉬우실 것 같습니다.

여러 회사의 데이터베이스 제품이 있으며 OHDSI 관련하여 국내에서는 MSSQL (Sql server)과 Postgresql 가장 많이 사용되고 있습니다. 두 제품 모두 무료로 사용할 수 있는 버전이 제공되고 있습니다.

유승찬 선생님께서 올려주신 github 링크는 다운받은 vocabulary 파일을 MSSQL 데이터베이스에 업로드 해주는 package 입니다.

감사합니다.

2 Likes

제가 R로 하는 방법은 아래와 같습니다.

  1. Athena에서 csv파일로 받습니다.

dat1 <- read.delim("<파일명>.csv",as.is=T,quote = “”)
write.csv(dat1, file=“C:/<원하는디렉토리>/<파일명>.csv”)

이상입니다. 도움이 되셨으면 좋겠네요.

고려대 주형준 드림

2 Likes

좋은 의견감사합니다.
Athena에서 다운받은 csv는 쉼표, 여백, 탭구분 등이 특정되지않아서 R로 불러들여도 정리가 안되어진상태여서 사용할수가없었습니다.
그래서 확인해보니 여기서 다운받은 csv는 DB용이라서 sql프로그램으로 불러들인뒤 다시 csv로 저장한다음 이를 R로 불러들였습니다.
그랬더니 Athena에서 보는것처럼 R에서도 가공이 가능하게되었습니다.

감사합니다.

1 Like
t