You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Data-Science-For-Beginners/translations/ja/AGENTS.md

366 lines
14 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

# AGENTS.md
## プロジェクト概要
Data Science for Beginnersは、Microsoft Azure Cloud Advocatesによって作成された包括的な10週間、20レッスンのカリキュラムです。このリポジトリは、プロジェクトベースのレッスンを通じて、Jupyterートブック、インタラクティブなクイズ、実践的な課題を含む基礎的なデータサイエンスの概念を教える学習リソースです。
**主要技術:**
- **Jupyterートブック**: Python 3を使用した主要な学習媒体
- **Pythonライブラリ**: pandas、numpy、matplotlibを使用したデータ分析と可視化
- **Vue.js 2**: クイズアプリケーションquiz-appフォルダー
- **Docsify**: オフラインアクセス用のドキュメントサイト生成ツール
- **Node.js/npm**: JavaScriptコンポーネントのパッケージ管理
- **Markdown**: すべてのレッスン内容とドキュメント
**アーキテクチャ:**
- 多言語対応の教育リポジトリで広範な翻訳を提供
- レッスンモジュール1-Introductionから6-Data-Science-In-Wildまでに構造化
- 各レッスンにはREADME、ートブック、課題、クイズが含まれる
- 独立したVue.jsクイズアプリケーションでレッスン前後の評価を実施
- GitHub CodespacesとVS Code開発コンテナをサポート
## セットアップコマンド
### リポジトリセットアップ
```bash
# Clone the repository (if not already cloned)
git clone https://github.com/microsoft/Data-Science-For-Beginners.git
cd Data-Science-For-Beginners
```
### Python環境セットアップ
```bash
# Create a virtual environment (recommended)
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# Install common data science libraries (no requirements.txt exists)
pip install jupyter pandas numpy matplotlib seaborn scikit-learn
```
### クイズアプリケーションセットアップ
```bash
# Navigate to quiz app
cd quiz-app
# Install dependencies
npm install
# Start development server
npm run serve
# Build for production
npm run build
# Lint and fix files
npm run lint
```
### Docsifyドキュメントサーバー
```bash
# Install Docsify globally
npm install -g docsify-cli
# Serve documentation locally
docsify serve
# Documentation will be available at localhost:3000
```
### 可視化プロジェクトセットアップ
meaningful-visualizationsレッスン13のような可視化プロジェクトの場合:
```bash
# Navigate to starter or solution folder
cd 3-Data-Visualization/13-meaningful-visualizations/starter
# Install dependencies
npm install
# Start development server
npm run serve
# Build for production
npm run build
# Lint files
npm run lint
```
## 開発ワークフロー
### Jupyterートブックの操作
1. リポジトリのルートでJupyterを開始: `jupyter notebook`
2. 希望するレッスンフォルダーに移動
3. `.ipynb`ファイルを開いて演習を進める
4. ノートブックは説明とコードセルを含む自己完結型
5. ほとんどのートブックはpandas、numpy、matplotlibを使用 - これらがインストールされていることを確認
### レッスン構成
各レッスンには通常以下が含まれます:
- `README.md` - 理論と例を含む主要なレッスン内容
- `notebook.ipynb` - 実践的なJupyterートブック演習
- `assignment.ipynb`または`assignment.md` - 練習課題
- `solution/`フォルダー - 解答ノートブックとコード
- `images/`フォルダー - 補助的な視覚資料
### クイズアプリケーション開発
- Vue.js 2アプリケーションで開発中にホットリロードを使用
- クイズは`quiz-app/src/assets/translations/`に保存
- 各言語には独自の翻訳フォルダーen、fr、esなどがある
- クイズ番号は0から始まり、39まで合計40クイズ
### 翻訳の追加
- 翻訳はリポジトリルートの`translations/`フォルダーに配置
- 各言語は英語の構造を完全にミラーリング
- GitHub Actionsによる自動翻訳co-op-translator.yml
## テスト手順
### クイズアプリケーションテスト
```bash
cd quiz-app
# Run lint checks
npm run lint
# Test build process
npm run build
# Manual testing: Start dev server and verify quiz functionality
npm run serve
```
### ノートブックテスト
- ノートブックには自動テストフレームワークが存在しない
- 手動検証: すべてのセルを順番に実行してエラーがないことを確認
- データファイルがアクセス可能で出力が正しく生成されることを確認
- 可視化が正しくレンダリングされることを確認
### ドキュメントテスト
```bash
# Verify Docsify renders correctly
docsify serve
# Check for broken links manually by navigating through content
# Verify all lesson links work in the rendered documentation
```
### コード品質チェック
```bash
# Vue.js projects (quiz-app and visualization projects)
cd quiz-app # or visualization project folder
npm run lint
# Python notebooks - manual verification recommended
# Ensure imports work and cells execute without errors
```
## コードスタイルガイドライン
### PythonJupyterートブック
- PythonコードのPEP 8スタイルガイドラインに従う
- 分析するデータを説明する明確な変数名を使用
- コードセルの前に説明を含むMarkdownセルを追加
- コードセルは単一の概念または操作に集中させる
- データ操作にはpandas、可視化にはmatplotlibを使用
- 一般的なインポートパターン:
```python
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
```
### JavaScript/Vue.js
- Vue.js 2のスタイルガイドとベストプラクティスに従う
- ESLint設定は`quiz-app/package.json`に記載
- Vueの単一ファイルコンポーネント.vueファイルを使用
- コンポーネントベースのアーキテクチャを維持
- コミット前に`npm run lint`を実行
### Markdownドキュメント
- 明確な見出し階層(# ## ###など)を使用
- 言語指定付きのコードブロックを含める
- 画像には代替テキストを追加
- 関連するレッスンやリソースへのリンクを追加
- 読みやすさのために行の長さを適切に保つ
### ファイル構成
- レッスン内容は番号付きフォルダー01-defining-data-scienceなどに配置
- 解答は専用の`solution/`サブフォルダーに配置
- 翻訳は英語の構造をミラーリングして`translations/`フォルダーに配置
- データファイルは`data/`またはレッスン専用フォルダーに保存
## ビルドとデプロイ
### クイズアプリケーションのデプロイ
```bash
cd quiz-app
# Build production version
npm run build
# Output is in dist/ folder
# Deploy dist/ folder to static hosting (Azure Static Web Apps, Netlify, etc.)
```
### Azure Static Web Appsのデプロイ
クイズアプリはAzure Static Web Appsにデプロイ可能:
1. Azure Static Web Appリソースを作成
2. GitHubリポジトリに接続
3. ビルド設定を構成:
- アプリの場所: `quiz-app`
- 出力の場所: `dist`
4. GitHub Actionsワークフローがプッシュ時に自動デプロイ
### ドキュメントサイト
```bash
# Build PDF from Docsify (optional)
npm run convert
# Docsify documentation is served directly from markdown files
# No build step required for deployment
# Deploy repository to static hosting with Docsify
```
### GitHub Codespaces
- リポジトリには開発コンテナ構成が含まれる
- CodespacesはPythonとNode.js環境を自動的にセットアップ
- GitHub UIを介してリポジトリをCodespaceで開く
- すべての依存関係が自動的にインストールされる
## プルリクエストガイドライン
### 提出前
```bash
# For Vue.js changes in quiz-app
cd quiz-app
npm run lint
npm run build
# Test changes locally
npm run serve
```
### PRタイトル形式
- 明確で説明的なタイトルを使用
- フォーマット: `[コンポーネント] 簡単な説明`
- 例:
- `[Lesson 7] Pythonートブックのインポートエラーを修正`
- `[Quiz App] ドイツ語翻訳を追加`
- `[Docs] 新しい前提条件をREADMEに更新`
### 必須チェック
- すべてのコードがエラーなく実行されることを確認
- ノートブックが完全に実行されることを確認
- Vue.jsアプリが正常にビルドされることを確認
- ドキュメントリンクが機能することを確認
- クイズアプリケーションを変更した場合はテスト
- 翻訳が一貫した構造を維持していることを確認
### 貢献ガイドライン
- 既存のコードスタイルとパターンに従う
- 複雑なロジックには説明コメントを追加
- 関連するドキュメントを更新
- 適用可能な場合は異なるレッスンモジュールで変更をテスト
- CONTRIBUTING.mdファイルを確認
## 追加の注意事項
### 使用される一般的なライブラリ
- **pandas**: データ操作と分析
- **numpy**: 数値計算
- **matplotlib**: データの可視化とプロット
- **seaborn**: 統計データの可視化(一部のレッスン)
- **scikit-learn**: 機械学習(高度なレッスン)
### データファイルの操作
- データファイルは`data/`フォルダーまたはレッスン専用ディレクトリに配置
- ほとんどのノートブックはデータファイルを相対パスで期待
- CSVファイルが主なデータ形式
- 一部のレッスンでは非リレーショナルデータ例としてJSONを使用
### 多言語対応
- GitHub Actionsによる40以上の言語翻訳
- 翻訳ワークフローは`.github/workflows/co-op-translator.yml`に記載
- 翻訳は`translations/`フォルダーに言語コード付きで配置
- クイズ翻訳は`quiz-app/src/assets/translations/`に保存
### 開発環境オプション
1. **ローカル開発**: Python、Jupyter、Node.jsをローカルにインストール
2. **GitHub Codespaces**: クラウドベースの即時開発環境
3. **VS Code開発コンテナ**: ローカルコンテナベースの開発
4. **Binder**: クラウドでノートブックを起動(設定されている場合)
### レッスン内容ガイドライン
- 各レッスンは独立しているが、前の概念を基に構築
- レッスン前のクイズで事前知識をテスト
- レッスン後のクイズで学習を強化
- 課題で実践的な練習を提供
- スケッチノートで視覚的な要約を提供
### よくある問題のトラブルシューティング
**Jupyterカーネルの問題:**
```bash
# Ensure correct kernel is installed
python -m ipykernel install --user --name=datascience
```
**npmインストールの失敗:**
```bash
# Clear npm cache and retry
npm cache clean --force
rm -rf node_modules package-lock.json
npm install
```
**ノートブックのインポートエラー:**
- 必要なライブラリがすべてインストールされていることを確認
- Pythonバージョンの互換性を確認Python 3.7以上推奨)
- 仮想環境が有効化されていることを確認
**Docsifyが読み込まれない:**
- リポジトリルートから提供していることを確認
- `index.html`が存在することを確認
- 適切なネットワークアクセスポート3000を確認
### パフォーマンスに関する注意事項
- 大規模なデータセットはノートブックで読み込むのに時間がかかる場合がある
- 複雑なプロットの可視化レンダリングが遅くなる可能性がある
- Vue.js開発サーバーはホットリロードを有効にして迅速な反復を可能に
- 本番ビルドは最適化され、縮小される
### セキュリティに関する注意事項
- 機密データや資格情報をコミットしない
- クラウドレッスンでのAPIキーは環境変数を使用
- Azure関連のレッスンではAzureアカウント資格情報が必要な場合がある
- セキュリティパッチのために依存関係を最新に保つ
## 翻訳への貢献
- GitHub Actionsによる自動翻訳管理
- 翻訳の正確性向上のための手動修正歓迎
- 既存の翻訳フォルダー構造に従う
- クイズリンクに言語パラメータを追加: `?loc=fr`
- 翻訳されたレッスンが正しくレンダリングされることをテスト
## 関連リソース
- メインカリキュラム: https://aka.ms/datascience-beginners
- Microsoft Learn: https://docs.microsoft.com/learn/
- Student Hub: https://docs.microsoft.com/learn/student-hub
- ディスカッションフォーラム: https://github.com/microsoft/Data-Science-For-Beginners/discussions
- その他のMicrosoftカリキュラム: ML for Beginners, AI for Beginners, Web Dev for Beginners
## プロジェクトの維持管理
- コンテンツを最新に保つための定期的な更新
- コミュニティの貢献を歓迎
- GitHubで問題を追跡
- カリキュラム管理者によるPRレビュー
- 毎月のコンテンツレビューと更新
---
**免責事項**:
この文書は、AI翻訳サービス [Co-op Translator](https://github.com/Azure/co-op-translator) を使用して翻訳されています。正確性を追求しておりますが、自動翻訳には誤りや不正確な部分が含まれる可能性があります。元の言語で記載された文書を正式な情報源としてお考えください。重要な情報については、専門の人間による翻訳を推奨します。この翻訳の使用に起因する誤解や誤解釈について、当方は一切の責任を負いません。