# λΉ λ₯Έ μμ κ°μ΄λ
# Quick Start Guide
## π 5λΆ μμ μμνκΈ° (Get Started in 5 Minutes)
### 1. μ€μΉ (Installation)
```bash
# Clone repository
git clone https://github.com/user/empirics_ent_strat_ops.git
cd empirics_ent_strat_ops
# Install dependencies (NO pyarrow needed!)
pip install -r requirements.txt
```
**μ€μ**: μ΄μ Parquet λμ **NetCDF (.nc)** νμμ μ¬μ©ν©λλ€. `pyarrow` μ€μΉκ° νμ μμ΅λλ€!
### 2. μ 체 νμ΄νλΌμΈ μ€ν (Run Full Pipeline)
```bash
# ν λ²μ μ€ν (One command)
make all
# λλ λ¨κ³λ³λ‘ (Step by step)
make data # λ°μ΄ν° μ²λ¦¬
make analysis # ν΅κ³ λΆμ
make tables # ν
μ΄λΈ μμ±
make figures # κ·Έλ¦Ό μμ±
make paper # λ
Όλ¬Έ μ»΄νμΌ
```
### 3. μμ μ€ν¬λ¦½νΈ μ€ν (Run Example Script)
```bash
# λ‘컬 νκ²½μμ μ 체 κ³Όμ νμΈ
./run_local_example.sh
```
μ΄ μ€ν¬λ¦½νΈλ λ€μμ μλμΌλ‘ μνν©λλ€:
- β
νκ²½ νμΈ
- β
λ°μ΄ν° λ³ν (.parquet β .nc)
- β
ν΅κ³ λΆμ μ€ν
- β
ν
μ΄λΈ/κ·Έλ¦Ό μμ±
- β
ν
μ€νΈ μ€ν
- β
λ
Όλ¬Έ PDF μμ±
---
## π μ£Όμ λ¬Έμ (Key Documents)
| λ¬Έμ | λ΄μ© | μ½λ μκ° |
|------|------|----------|
| **PAPER_TESTING_GUIDE.md** | λ
Όλ¬Έ μμ± ν
μ€νΈ μ λ΅ | 15λΆ |
| **PAPER_PIPELINE_GUIDE.md** | νμ΄νλΌμΈ μμ κ°μ΄λ | 20λΆ |
| **PAPER_CODE_MAPPING.md** | 32κ° λͺ¨λ λ§€ν | 10λΆ |
| **README.md** | νλ‘μ νΈ κ°μ | 5λΆ |
---
## π§ͺ ν
μ€νΈ (Testing)
### λΉ λ₯Έ ν
μ€νΈ (1λΆ)
```bash
# ν΅μ¬ λͺ¨λΈ ν
μ€νΈλ§
pytest test/unit/test_models.py -v --no-cov
```
### μ 체 ν
μ€νΈ (5λΆ)
```bash
# λͺ¨λ ν
μ€νΈ + 컀λ²λ¦¬μ§
make test
```
### λ°μ΄ν° νμ§ νμΈ
```bash
# λ°μ΄ν° μ΄μ κ°μ§
pytest test/integration/test_data_quality.py -v
```
---
## π μΆλ ₯ νμΌ (Output Files)
```
empirics_ent_strat_ops/
βββ data/processed/
β βββ features_engineered.nc β μ²λ¦¬λ λ°μ΄ν°
βββ paper/
β βββ results_auto.tex β μλ μμ± Results μΉμ
β βββ results_values.json β ν΅κ³κ° (JSON)
β βββ tables/
β β βββ table1_h1.tex β H1 ν
μ΄λΈ
β β βββ table2_h2.tex β H2 ν
μ΄λΈ
β βββ figures/
β β βββ fig2_early_funding.pdf β Figure 2
β β βββ fig3_later_success.pdf β Figure 3
β βββ output/
β βββ main.pdf β μ΅μ’
λ
Όλ¬Έ PDF
```
---
## π§ μμ£Ό νλ μμ
(Common Tasks)
### λ°μ΄ν° λ³κ²½ ν μ¬μ€ν
```bash
make data # λ°μ΄ν° μ¬μ²λ¦¬
make quick # λΆμ+λ
Όλ¬Έ μ¬μμ± (λ°μ΄ν° 건λλ°κΈ°)
```
### Results μΉμ
λ§ μ
λ°μ΄νΈ
```bash
make results-only
```
### μ 체 μ΄κΈ°ν
```bash
make clean-all # λͺ¨λ μμ± νμΌ μμ
make all # μ²μλΆν° μ¬μ€ν
```
### Parquet νμΌ λ³ν
```bash
# κΈ°μ‘΄ .parquet νμΌμ .ncλ‘ λ³ν
python scripts/convert_to_netcdf.py --directory data/processed
# λ³ν ν .parquet μμ (μ ν)
python scripts/convert_to_netcdf.py --directory data/processed --remove-original
```
---
## β λ¬Έμ ν΄κ²° (Troubleshooting)
### pyarrow μ€μΉ μ€ν¨
```bash
# ν΄κ²°: NetCDF μ¬μ© (pyarrow νμ μμ)
pip install xarray netcdf4
# κΈ°μ‘΄ .parquet νμΌ λ³ν
python scripts/convert_to_netcdf.py
```
### ν
μ€νΈ μ€ν¨: "features_engineered.nc not found"
```bash
# ν΄κ²°: λ°μ΄ν° μ²λ¦¬ λ¨Όμ μ€ν
make data
pytest test/
```
### LaTeX μ»΄νμΌ μ€ν¨
```bash
# Linux
sudo apt-get install texlive-full
# macOS
brew install mactex
# Windows
# Install MiKTeX from https://miktex.org
```
### λͺ¨λΈ ν
μ€νΈ μ€ν¨: κ³μ λΆνΈ λ°λ
```
AssertionError: H1: Vagueness should reduce early funding
```
**μμΈ**:
- λ°μ΄ν°κ° λ°λμκ±°λ
- λͺ¨λΈ μ€νμ΄ λ³κ²½λ¨
**λμ**:
1. λ°μ΄ν° νμΈ: `python -c "from data_io import load_dataframe; df = load_dataframe('data/processed/features_engineered.nc'); print(df['vagueness'].describe())"`
2. λͺ¨λΈ κ²°κ³Ό νμΈ: `pytest test/unit/test_models.py::TestH1EarlyFunding -v`
3. μ΄λ‘ μ¬κ²ν νμ
---
## π μ±λ₯ λΉκ΅
### NetCDF vs Parquet
| νλͺ© | Parquet | NetCDF |
|------|---------|--------|
| μμ‘΄μ± | pyarrow (μ€μΉ μ΄λ €μ) | xarray (μ¬μ) |
| νμΌ ν¬κΈ° | 2.3 MB | 1.8 MB (22% μμ) |
| λ‘λ© μλ | λΉ λ¦ | λΉμ·ν¨ |
| νΈνμ± | Python | λ€μν μΈμ΄ |
**κ²°λ‘ **: NetCDFκ° λ κ°λ¨νκ³ κ°λ²Όμ! β
---
## π― λ€μ λ¨κ³ (Next Steps)
### 1. λ‘컬μμ ν
μ€νΈ
```bash
./run_local_example.sh
```
### 2. λ
Όλ¬Έ κ° νμΈ
```bash
cat paper/results_values.json
```
### 3. μμ±λ ν
μ΄λΈ νμΈ
```bash
cat paper/tables/table1_h1.tex
```
### 4. μ΅μ’
PDF νμΈ
```bash
open paper/output/main.pdf # macOS
xdg-open paper/output/main.pdf # Linux
```
---
## π λμλ§ (Help)
### λͺ
λ Ήμ΄ λμλ§
```bash
make help # Makefile λμλ§
python -m src.cli --help # CLI λμλ§
```
### νμ΄νλΌμΈ μν νμΈ
```bash
make info # μ΄λ€ νμΌμ΄ μμ±λμλμ§ νμΈ
```
### ν
μ€νΈ λμλ§
```bash
pytest --help # pytest μ΅μ
pytest --collect-only # μ¬μ© κ°λ₯ν ν
μ€νΈ λͺ©λ‘
```
---
## π νμ΅ κ²½λ‘ (Learning Path)
1. **μ²μ μ¬μ©**: `./run_local_example.sh` μ€ν
2. **ν
μ€νΈ μ΄ν΄**: `docs/PAPER_TESTING_GUIDE.md` μ½κΈ°
3. **νμ΄νλΌμΈ μ΄ν΄**: `docs/PAPER_PIPELINE_GUIDE.md` μ½κΈ°
4. **μ½λ λ§€ν μ΄ν΄**: `docs/PAPER_CODE_MAPPING.md` μ½κΈ°
5. **κ³ κΈ μ¬μ©**: Makefile 컀μ€ν°λ§μ΄μ§
---
## β
체ν¬λ¦¬μ€νΈ (Checklist)
λ
Όλ¬Έ μ μΆ μ :
- [ ] `make clean-all && make all` μ€ν
- [ ] `make test` λͺ¨λ ν΅κ³Ό
- [ ] PDF μ»΄νμΌ μ±κ³΅
- [ ] Table 1-2 νμΈ
- [ ] Figure 2-3 νμΈ
- [ ] Results μΉμ
νμΈ
- [ ] Git commit
---
**λ¬Έμ**: λ¬Έμ κ° μμΌλ©΄ `docs/PAPER_TESTING_GUIDE.md`μ "λ¬Έμ ν΄κ²°" μΉμ
μ°Έμ‘°