{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# pandas 100제 실습 노트북\n",
    "\n",
    "위퀴즈 북스 「pandas 100제: 판다스 연습문제와 풀이」의 실습용 노트북입니다.\n",
    "\n",
    "1. 장마다 **준비 코드** 셀을 먼저 실행하세요 (Shift+Enter).\n",
    "2. 문제 아래 빈 셀에 코드를 써서 실행합니다. 같은 장의 문제는 번호 순서대로 이어집니다.\n",
    "3. 막히면 책의 힌트와 정답을 펼쳐 보세요: https://wequiz.org/books/pandas-100-exercises/\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 021–030 열과 행 선택하기\n",
    "\n",
    "해설·힌트·정답: https://wequiz.org/books/pandas-100-exercises/pandas-100-021-select/"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "**준비 코드** — 이 셀을 먼저 실행하세요."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "import pandas as pd\n",
    "import numpy as np\n",
    "\n",
    "df = pd.DataFrame({\n",
    "    'name': ['김민준', '이서연', '박지호', '최수아', '정민서', '강도윤', '윤하은', '임시우'],\n",
    "    'class': ['A', 'B', 'A', 'C', 'B', 'C', 'A', 'B'],\n",
    "    'kor': [85, 92, 58, 77, 66, 90, 73, 81],\n",
    "    'eng': [78, 88, 64, 95, 59, 70, 82, 91],\n",
    "    'math': [92, 75, 49, 88, 71, 66, 95, 60],\n",
    "})"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 021. 열 하나 꺼내기\n",
    "\n",
    "`name` 열을 Series로 꺼내세요."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "# 여기에 코드를 쓰고 Shift+Enter\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 022. 여러 열 꺼내기\n",
    "\n",
    "`name`과 `math` 두 열을 DataFrame으로 꺼내세요."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "# 여기에 코드를 쓰고 Shift+Enter\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 023. loc로 한 행\n",
    "\n",
    "인덱스 라벨이 2인 학생의 정보(행 전체)를 보이세요."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "# 여기에 코드를 쓰고 Shift+Enter\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 024. iloc로 범위\n",
    "\n",
    "처음 3행의 두 번째·세 번째 열(`class`, `kor`)을 **위치 번호**로 꺼내세요."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "# 여기에 코드를 쓰고 Shift+Enter\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 025. loc로 행과 열\n",
    "\n",
    "인덱스 라벨 0~2 학생의 `name`, `kor`를 **라벨**로 꺼내세요."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "# 여기에 코드를 쓰고 Shift+Enter\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 026. 값 하나 꺼내기\n",
    "\n",
    "인덱스 3 학생의 영어 점수 하나만 꺼내세요."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "# 여기에 코드를 쓰고 Shift+Enter\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 027. 열 지우기\n",
    "\n",
    "`class` 열을 뺀 표의 앞 3행을 보이세요."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "# 여기에 코드를 쓰고 Shift+Enter\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 028. 새 열 만들기\n",
    "\n",
    "세 과목 합계 열 `total`을 추가하고 앞 3행을 보이세요."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "# 여기에 코드를 쓰고 Shift+Enter\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 029. 계산 열 추가\n",
    "\n",
    "평균 열 `avg`(소수 첫째 자리 반올림)를 추가하고 `name`, `total`, `avg`를 보이세요."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "# 여기에 코드를 쓰고 Shift+Enter\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 030. 열 순서 바꾸기\n",
    "\n",
    "`class`, `name`, `avg` 순서로 열을 골라 앞 3행을 보이세요."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "# 여기에 코드를 쓰고 Shift+Enter\n"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "name": "python"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
