Skip to main content

Python module for cohort data reading

Project description

Pykoges

Koges (한국인유전체역학조사사업) 데이터를 읽어오기 위한 모듈입니다.

원주의과대학의 Koges-Arirang 데이터에 특화되어 있습니다.

1. 클래스 및 함수 설명

1.1 Question 클래스

  • 설문지 질문과 관련된 정보를 담은 클래스입니다.
  • add_answer 메서드는 행 데이터에서 답변 정보를 추출하여 해당 질문 객체에 추가합니다.
  • add_fileinfo 메서드는 파일 경로에서 데이터 타입과 연도를 추출하여 해당 질문 객체에 추가합니다.
  • from_row 클래스 메서드는 행 데이터를 기반으로 질문 객체를 생성합니다.
  • to_json 메서드는 질문 객체를 JSON 형식으로 변환하여 반환합니다.

1.2 Answer 클래스

  • 질문에 대한 답변을 담은 클래스입니다.
  • from_row 클래스 메서드는 마지막 질문 객체와 행 데이터를 기반으로 답변 객체를 생성합니다.

1.3 Questions 클래스

  • 여러 질문 객체를 관리하는 클래스입니다.
  • keys 메서드는 데이터 타입과 연도에 대한 키를 정렬하여 반환합니다.
  • from_type 메서드는 특정 데이터 타입과 연도에 해당하는 질문 리스트를 반환합니다.
  • has_code 메서드는 특정 코드를 가진 질문 리스트를 반환합니다.
  • has_text 메서드는 특정 텍스트를 포함하는 질문 리스트를 반환합니다.

1.4 Patient 클래스

  • 환자 정보를 담은 클래스입니다.
  • to_json 메서드는 환자 객체를 JSON 형식으로 변환하여 반환합니다.

1.5 Patients 클래스

  • 여러 환자 객체를 관리하는 클래스입니다.
  • append 메서드는 새로운 환자 객체를 리스트에 추가합니다.
  • has_patient 메서드는 특정 환자 객체가 리스트에 있는지 여부를 반환합니다.

2. 사용 예시

# 사용 예시
questions_list = [...]  # Question 객체 리스트 생성
patients_list = [...]   # Patient 객체 리스트 생성

# Questions 클래스 인스턴스 생성
q = Questions(questions_list)

# Patients 클래스 인스턴스 생성
p = Patients(patients_list)

# 특정 데이터 타입과 연도에 해당하는 질문 객체 추출
selected_questions = q.from_type("baseline", 2022)

# 특정 코드를 가진 질문 객체 추출
specific_question = q.has_code("abc123")

# 특정 텍스트를 포함하는 질문 객체 추출
text_related_question = q.has_text("사용자 만족도 조사")

# 새로운 환자 객체를 리스트에 추가
new_patient = Patient({"name": "John Doe", "birthday": "19900101", "socialno1": "123456"})
p.append(new_patient)

# 특정 환자 객체가 리스트에 있는지 여부 확인
has_specific_patient = p.has_patient(new_patient)

1. codingbook 하위모듈

1.1 readFromCsv(filePath)

  • 주어진 CSV 파일을 읽어서 openpyxl의 Workbook 형식으로 반환합니다.

1.2 readCodingBook(filePath)

  • 주어진 CSV 파일에서 질문과 답변을 추출하여 Question 객체를 생성합니다.
  • Question 객체는 pykoges 라이브러리의 Question 클래스의 인스턴스입니다.
  • 파일 정보를 추가하고, 전체 질문 목록에 추가합니다.

1.3 readCodingBooks(path="./data_fixed")

  • 지정된 폴더에서 "codingbook"이 포함된 파일들을 찾아 readCodingBook을 호출하여 질문 데이터를 읽습니다.
  • 결과로 Questions 클래스의 인스턴스를 반환합니다.

1.4 printInitResult(q)

  • 분석 결과를 출력하는 함수입니다.
  • Markdown 형식으로 출력되며, 실행 결과에는 전체 질문 개수, 코드 중복 제거 후 개수, 객관식과 주관식 데이터 개수, 연도별 질문 개수 등이 포함됩니다.

2. 실행 결과 예시

# 예시 데이터
q = readCodingBooks()
printInitResult(q)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pykoges-0.1.1.tar.gz (7.2 kB view details)

Uploaded Source

File details

Details for the file pykoges-0.1.1.tar.gz.

File metadata

  • Download URL: pykoges-0.1.1.tar.gz
  • Upload date:
  • Size: 7.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.7

File hashes

Hashes for pykoges-0.1.1.tar.gz
Algorithm Hash digest
SHA256 c9db8cfafd9a7b05b68e74885b00e3c25aab92e25a5a43ab464604b95e1697fb
MD5 a95b61e7ef8a9d08244607d30dd904e9
BLAKE2b-256 bafb4f8f79009835c1a4abbc656fdb2424bcaea4a519e4c1b436b748c9fb38c4

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page