{
  "fetched_at": "2026-10-20T07:41:36Z",
  "source_url": "https://www.kaggle.com/competitions/2024-ml-midterm-p5-re/data",
  "pages": [
    {
      "name": "data-description",
      "content": "### 제공된 데이터\n- train.csv 파일 : 학습데이터 \n- test.csv 파일 : 테스트데이터\n- sample_submission.csv : 정답 제출용 파일\n\n### 데이터 구성\n- train.csv [244x58] = [ 학습 데이터의 수 x {id, 개/폐업 여부, 56차원 데이터} ] \n- test.csv [57x57] = [ 테스트 데이터의 수 x {id, 56차원 데이터} ]\n- sample_submission.csv [57x2] = [ 테스트 데이터의 수 x {id, 개/폐업 여부} ]\n\n## 데이터의 각 특징에 대한 설명\n\n- nst_id - 각 파일에서의 병원 고유 번호\n- OC – 영업/폐업 분류, 2018년 폐업은 2017년 폐업으로 간주함\n- sido – 병원의 광역 지역 정보\n- sgg – 병원의 시군구 자료\n- openDate – 병원 설립일\n- bedCount - 병원이 갖추고 있는 병상의 수\n- instkind – 병원, 의원, 요양병원, 한의원, 종합병원 등 병원의 종류\n  - 종합병원 : 입원환자 100명 이상 수용 가능\n  - 병원 : 입원 환자 30명 이상 100명 미만 수용 가능\n  - 의원 : 입원 환자 30명 이하 수용 가능\n  - 한방 병원(한의원) : 침술과 한약으로 치료하는 의료 기관.\n- revenue1 – 매출액, 2017(회계년도)년 데이터를 의미함\n- salescost1 – 매출원가, 2017(회계년도)년 데이터를 의미함\n- sga1 - 판매비와 관리비, 2017(회계년도)년 데이터를 의미함\n- salary1 – 급여, 2017(회계년도)년 데이터를 의미함\n- noi1 – 영업외수익, 2017(회계년도)년 데이터를 의미함\n- noe1 – 영업외비용, 2017(회계년도)년 데이터를 의미함\n- Interest1 – 이자비용, 2017(회계년도)년 데이터를 의미함\n- ctax1 – 법인세비용, 2017(회계년도)년 데이터를 의미함\n- Profit1 – 당기순이익, 2017(회계년도)년 데이터를 의미함\n- liquidAsset1 – 유동자산, 2017(회계년도)년 데이터를 의미함\n- quickAsset1 – 당좌자산, 2017(회계년도)년 데이터를 의미함\n- receivableS1 - 미수금(단기), 2017(회계년도)년 데이터를 의미함\n- inventoryAsset1 – 재고자산, 2017(회계년도)년 데이터를 의미함\n- nonCAsset1 – 비유동자산, 2017(회계년도)년 데이터를 의미함\n- tanAsset1 – 유형자산, 2017(회계년도)년 데이터를 의미함\n- OnonCAsset1 - 기타 비유동자산, 2017(회계년도)년 데이터를 의미함\n- receivableL1 – 장기미수금, 2017(회계년도)년 데이터를 의미함\n- debt1 – 부채총계, 2017(회계년도)년 데이터를 의미함\n- liquidLiabilities1 – 유동부채, 2017(회계년도)년 데이터를 의미함\n- shortLoan1 – 단기차입금, 2017(회계년도)년 데이터를 의미함\n- NCLiabilities1 – 비유동부채, 2017(회계년도)년 데이터를 의미함\n- longLoan1 – 장기차입금, 2017(회계년도)년 데이터를 의미함\n- netAsset1 – 순자산총계, 2017(회계년도)년 데이터를 의미함\n- surplus1 – 이익잉여금, 2017(회계년도)년 데이터를 의미함\n- revenue2 – 매출액, 2016(회계년도)년 데이터를 의미함\n- salescost2 – 매출원가, 2016(회계년도)년 데이터를 의미함\n- sga2 - 판매비와 관리비, 2016(회계년도)년 데이터를 의미함\n- salary2 – 급여, 2016(회계년도)년 데이터를 의미함\n- noi2 – 영업외수익, 2016(회계년도)년 데이터를 의미함\n- noe2 – 영업외비용, 2016(회계년도)년 데이터를 의미함\n- interest2 – 이자비용, 2016(회계년도)년 데이터를 의미함\n- ctax2 – 법인세비용, 2016(회계년도)년 데이터를 의미함\n- profit2 – 당기순이익, 2016(회계년도)년 데이터를 의미함\n- liquidAsset2 – 유동자산, 2016(회계년도)년 데이터를 의미함\n- quickAsset2 – 당좌자산, 2016(회계년도)년 데이터를 의미함\n- receivableS2 - 미수금(단기), 2016(회계년도)년 데이터를 의미함\n- inventoryAsset2 – 재고자산, 2016(회계년도)년 데이터를 의미함\n- nonCAsset2 – 비유동자산, 2016(회계년도)년 데이터를 의미함\n- tanAsset2 – 유형자산, 2016(회계년도)년 데이터를 의미함\n- OnonCAsset2 - 기타 비유동자산, 2016(회계년도)년 데이터를 의미함\n- receivableL2 – 장기미수금, 2016(회계년도)년 데이터를 의미함\n- Debt2 – 부채총계, 2016(회계년도)년 데이터를 의미함\n- liquidLiabilities2 – 유동부채, 2016(회계년도)년 데이터를 의미함\n- shortLoan2 – 단기차입금, 2016(회계년도)년 데이터를 의미함\n- NCLiabilities2 – 비유동부채, 2016(회계년도)년 데이터를 의미함\n- longLoan2 – 장기차입금, 2016(회계년도)년 데이터를 의미함\n- netAsset2 – 순자산총계, 2016(회계년도)년 데이터를 의미함\n- surplus2 – 이익잉여금, 2016(회계년도)년 데이터를 의미함\n- employee1 – 고용한 총 직원의 수, 2017(회계년도)년 데이터를 의미함\n- employee2 – 고용한 총 직원의 수, 2016(회계년도)년 데이터를 의미함\n- ownerChange – 대표자의 변동",
      "isPublished": false,
      "hasIsPublished": false,
      "postTitle": "",
      "hasPostTitle": false,
      "mimeType": "",
      "hasMimeType": false
    },
    {
      "name": "rules",
      "content": "2024.기계학습.중간고사.문제5.다시풀기",
      "isPublished": false,
      "hasIsPublished": false,
      "postTitle": "",
      "hasPostTitle": false,
      "mimeType": "",
      "hasMimeType": false
    },
    {
      "name": "abstract",
      "content": "## 교과목 정보\n- 세종대학교 AI로봇학과 기계학습 중간고사\n\n## 문항 정보\n### 병원 개/폐업 예측 \n병원 개/폐업 예측은 지역 사회의 의료 수요와 공급을 파악하고, 해당 지역에서의 의료 시설의 필요성을 평가하는데 도움이 된다. 여러분은 지금부터 수업시간에 배운 <머신러닝 기술>을 활용하여, test.csv 파일로 제공된 병원 개/폐업 여부를 예측하는 인공지능 SW를 작성해주길 바란다.\n\n### 시작하기에 앞서\n* Description, Data를 반드시 잘 읽어보세요. **잘 읽지 않으면 베이스라인 달성이 매우 어려울 수 있습니다.**\n* 데이터 설명은 데이터 탭에 있습니다.\n\n## 평가 기준 \n- 베이스라인 이상의 점수를 부여받아야 PASS\n- 반드시 랜덤시드를 고정하세요. (미고정시 10% 감점)\n- 모듈별 코드에 주석을 반드시 달아주세요. 특히, 어떤 목적으로 API를 호출했는지 작성되어야 합니다. (미제출시 10% 감점)\n\n##랜덤시드\n- 특정 알고리즘에 들어가는 `random_state` 역시 고정해주어야 합니다.\n```python\nimport random\nimport os\nseed = 42\nrandom.seed(seed)\nnp.random.seed(seed)\nos.environ[\"PYTHONHASHSEED\"] = str(seed)\n```\n---\n\n## 문제 풀이를 위한 안내사항 (데이터 전처리 가이드라인)\n본 문제의 데이터에는 nan값이 포함되어 있습니다. 아래에서 설명할 내용은 문제의 베이스라인 점수를 달성하기 위한 데이터 전처리 가이드라인이며, 아래와 다른 전처리 방법을 통해 베이스라인을 통과하여도 점수는 인정됩니다.\n본 문제의 목적은 아직 배우지 않은 전처리 내용을 시험에 포함시키려는 것이 아닌, **처음 접하는 함수에 대해 공식 API를 보고 적용 가능한지를 평가하기 위함**입니다.\n\n아래 안내사항을 한 단계씩 따라가며 문제를 해결하시기 바랍니다. 각 함수 이름을 누르면 공식 문서로 이동할 수 있습니다.\n\n1.  pandas 라이브러리의 **'[info()](https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.info.html)'** 함수를 통해 우선 데이터의 속성이 어떤 자료형을 갖는지 알아볼 수 있습니다. \n2. 이를 통해 열 별 자료형을 확인하시고, **'object'로 지정되어 있는 모든 열을 pandas 라이브러리의 '[drop()](https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.drop.html)' 함수를 통해 모두 제거**해주세요.\n3. 다시 'info()' 함수를 사용하여 'object' 자료형을 갖던 열들이 모두 제거됐는지 확인해주시기 바랍니다.\n4. 학습 데이터에 대한 'info()' 함수의 결과를 보면, 총 244개의 샘플을 가지는 것을 알 수 있습니다. 다만 출력에 보이는  'Non-Null Count' 수를 확인하면, 열 별로 정상 측정치가 아닌 결측치가 적게는 4개, 많게는 10개까지 들어가있음을 알 수 있습니다. 이제 sklearn 라이브러리의 [SimpleImputer()](https://scikit-learn.org/stable/modules/generated/sklearn.impute.SimpleImputer.html) 함수를 통해 해당 결측치를 제거하겠습니다.\n5. 아래 함수와 같이 [SimpleImputer](https://scikit-learn.org/stable/modules/generated/sklearn.impute.SimpleImputer.html)를 import 해올 수 있습니다.\n```\nfrom sklearn.impute import SimpleImputer\n```\n\n위 SimpleImputer 문서에서 함수의 사용법을 잘 읽어보신 뒤, **데이터에 존재하는 결측치 'np.nan'을 해당 열의 '평균' 값으로 대체**해주세요.\n이 때, 테스트 데이터의 평균 값은 알 수 없다는 가정 하에(StandardScaler 사용 원리와 동일) SimpleImputer는 학습 데이터에 대해서만 fit 해주시기 바랍니다. (위반 시 10% 감점)\n\n6. 위 방식으로 전처리된 데이터를 이제 여러분들이 배운 기계학습 방법론으로 분류해주시기 바랍니다.\n예측 파일 제출 시 **예측값은 'Open' 또는 'Close'가 아닌 각각 1, 0으로 맵핑**해 제출해주시기 바랍니다. (LabelEncoder 활용 가능)",
      "isPublished": false,
      "hasIsPublished": false,
      "postTitle": "",
      "hasPostTitle": false,
      "mimeType": "",
      "hasMimeType": false
    }
  ]
}