【GitHub人気急騰】PandasAI で実現する「コード0行」のデータ分析革命！

## はじめに

「データ分析のコードを書くのが面倒...」そんな悩みを一瞬で解決する革命的ツールが登場しました。

**PandasAI** は、あなたの言葉をそのままコードに変換し、複雑なデータ分析を自然言語だけで完結させる次世代フレームワークです。

「このデータの平均値は？」「男女比をグラフで見せて」と話しかけるだけで、バックグラウンドでLLMが最適なPythonコードを自動生成・実行し、即座に結果を返してくれます。

コーディングの壁を取り払い、誰もがデータの力を最大限に引き出せる新時代の幕開けです。

https://github.com/sinaptik-ai/pandas-ai

---

### 1. PandasAI（PandaAI）とは？
**PandasAI（PandaAI）** は、対話型のデータ分析フレームワークです。`pandas`のデータフレームを使った分析や、SQLクエリの代わりに自然言語で「～してほしい」と指示を出すだけで、バックエンドではLLMがPythonコードやSQLを自動生成して実行し、結果を返してくれます。

PandasAIは以下のような特徴があります。

- **自然言語でデータ操作**  
  「このカラムの要約統計量を出して」「2021年以降に絞って平均を計算して」などの要望を、そのまま会話形式でやり取り可能。  
- **複数のデータソース対応**  
  CSVやParquetといったローカルファイルだけでなく、BigQuery・Snowflake・Databricks・Oracleなどの外部データベースとも接続して対話形式でデータを取得できます。  
- **多様なLLMを活用できる設計**  
  OpenAI、HuggingFace、Google Vertex AI、LangChain、あるいはローカルのLLMなど、さまざまなモデルを背後で使うことが可能です。  
- **セキュリティの拡張機能**  
  高度なSecurity Agent（エンタープライズ向けライセンス）により、生成したコードの安全性や適切な利用を評価する仕組みも提供されています。

最新の情報は[公式ドキュメント](https://docs.getpanda.ai/)や[GitHubリポジトリ](https://github.com/sinaptik-ai/pandas-ai)を参照すると詳細を深掘りできます。

---

### 2. 主な機能・特徴

PandasAIの機能をもう少し具体的に紹介します。

1. **自然言語による質問・命令**  
   たとえば、ある心臓病に関するCSV（`heart.csv`）を読み込んだデータフレームに対して、「平均年齢は何歳？」「男女比を出して棒グラフで可視化して」などと指示をすると、裏でLLMが分析コードを生成して実行、結果を返してくれます。

2. **データの対話型可視化**  
   「グラフで見せて」「棒グラフと折れ線グラフを重ねて表示して」などといった自然言語を入力するだけで、必要なPythonコード（matplotlib、seabornなど）を自動生成して画像として出力。数行のコードを書く手間が省けます。

3. **LLMコネクタの豊富さ**  
   オープンソースのOpenAI、HuggingFaceなどだけでなく、AWS BedrockによるClaudeの利用、Google Vertex AI/Gemini、IBM WatsonX、LangChain連携、さらにはローカルLLMなど、多彩なLLMを組み合わせることで、用途に合わせた分析が可能です。

4. **多様なデータソース**  
   CSVやParquetだけでなく、SQLデータベース（Postgres、MySQL、CockroachDBなど）、BigQuery、Snowflake、Databricks、Oracleとも連携。企業が保有する大規模データにも対応しやすい設計です。

5. **セキュリティと拡張機能**  
   - **Advanced Security Agent**  
     生成コードが安全かどうかを判定する「JudgeAgent」「SecurityAgent」などの仕組みも（有償エディション）提供。  
   - **権限管理・パスワード保護**  
     AIダッシュボードを組織内やコミュニティに共有する際のアクセスレベル管理が可能です。

---

### 3. 基本的な使い方

PandasAIの導入方法はPoetryまたはpipからインストールするのが一般的です。  
ここではpipの例を簡単に示します。LLMコネクタとしてOpenAIを利用する場合は、`pandasai`と`pandasai-openai`の両方をインストールするとよいでしょう。

```bash
pip install pandasai
pip install pandasai-openai
```

1. **ライブラリの読み込みとデータの準備**
   ```python
   import pandas as pd
   from pandasai import SmartDataframe
   from pandasai_openai import OpenAI

   # データ読み込み
   df = pd.read_csv("heart.csv")  # 例として心臓病データを読み込み
   ```

2. **LLM（ここではOpenAI）とSmartDataframeの設定**
   ```python
   llm = OpenAI(api_token="YOUR_OPENAI_API_KEY")  # OpenAIキーを設定
   sdf = SmartDataframe(df, config={"llm": llm})
   ```

3. **自然言語で質問する**
   ```python
   answer = sdf.chat("男女比を教えてください")
   print(answer)
   ```
   これで、指定したデータフレームに対して「男女のレコード数の比率」を計算するPythonコードが自動生成・実行され、その結果が表示されます。

4. **プロットの作成も自然言語で**
   ```python
   plot_result = sdf.chat("男女を棒グラフで可視化してください")
   ```
   matplotlibやseabornを使った可視化コードが生成され、画像が出力されます。コマンドラインやノートブック環境によっては、そのまま画像が表示される形です。

---

### 4. 拡張的な使い方（LLM・Connectors・Security機能）

**(1) LLMコネクタの切り替え**  
プロジェクトや利用可能なAPIに応じて、HuggingFaceのモデルを使いたい場合は`pandasai-huggingface`、Google Vertex AIを使いたい場合は`pandasai-google`など、追加でインストールし、`config`に対応するLLMインスタンスを渡すだけで切り替えができます。

**(2) Connectorsで複数のデータソースに対応**  
CSV・Parquetなどローカルファイルに加えて、以下のような拡張をインストールすればBigQueryやSnowflakeなどに接続できます。

```bash
pip install pandasai-bigquery
pip install pandasai-snowflake
# など
```
設定例:
```python
from pandasai_bigquery import load_from_bigquery

connection_info = {
    "project_id": "my-project",
}
df_bigquery = load_from_bigquery(connection_info, query="SELECT * FROM my_dataset.my_table")
```
その後は通常のDataFrame同様に`df_bigquery.chat("～して")`という利用が可能になります。

**(3) Security機能**  
- **Advanced Security Agent**: モデルが出力するコードが意図せず危険な操作をしないかを監査する仕組み。  
- **JudgeAgent**: 生成コードが正しい処理をしているかを判定。  
エンタープライズ向けの利用となり、ライセンス要件がありますが、社内や商用利用での安全性を高めるうえで重要な役割を果たします。

---

### 5. 次のステップ

1. **ドキュメントを読む**  
   [PandasAI公式ドキュメント](https://docs.getpanda.ai/)には、より詳細なコード例や高度な機能の使い方が紹介されています。  
2. **GitHubでリポジトリを確認する**  
   [公式GitHubリポジトリ](https://github.com/sinaptik-ai/pandas-ai)にはソースコードやIssue、Pull Requestのやり取りが公開されているので、バグ報告や新機能提案を行いたい場合に便利です。  
3. **実運用に向けた拡張**  
   セキュリティ強化や大規模データ連携が必要な場合は、JudgeAgentやAdvanced Security Agentのライセンス、あるいは各種Connectorsのエンタープライズ拡張を検討するとよいでしょう。

---

# まとめ

PandasAIは、データ分析の民主化を実現する画期的なフレームワークです。

SQLやPythonの専門知識がなくても、自然な会話だけで高度なデータ分析が可能になります。
複雑なコードを書く時間は過去のものとなり、データからのインサイト発見に集中できるようになります。

BigQueryやSnowflakeなどの多様なデータソースにも対応し、エンタープライズレベルのセキュリティ機能も備えています。

PandasAIの登場により、「コードを書く人」と「分析する人」の境界線が溶け、組織全体のデータ活用能力が飛躍的に向上するでしょう。

対話型AIデータ分析の未来がここに—今すぐPandasAIを試して、データとの新しい対話を始めましょう。

---
### 会社紹介

**株式会社 Mosaica**  
最先端テクノロジーで社会課題を解決し、持続可能な未来を創造する IT カンパニー。
AI ソリューション、クラウド統合、DX 推進、経営コンサルティングなど包括的なサービスでビジネス変革を支援しています。  

詳しくは [公式サイト](https://mosaica.co.jp/) までお気軽にご相談ください。
公式サイト： https://mosaica.co.jp/