シンプソン優占度指数計算ツール
シンプソン優占度指数は、生態群集の個体数が記録された種の間でどの程度集中しているかを表します。標本に含まれる各種について、0以上の整数の個体数を入力してください。相対存在量を二乗して合計した値を返します。1に近いほど少数の種が観察の大部分を占め、小さいほど個体数が均等に分布しています。結果は常に同じ入力から同じ値になり、総個体数と入力した種数も含みます。対話的な確認にも、API を用いた再現可能な分析にも利用できます。
無料で実行
比較に適した種別個体数を準備します
方形区で観察した個体、一定期間の調査で捕獲した生物、統一したフィルタリング後に分類群へ割り当てたシーケンスリードなど、明確に定義した1つの標本単位から得た個体数をご用意ください。群集の定義に含める種ごとに、配列へ1つの値を入力します。値は観察された存在量を表すため、割合や名称ではなく、0以上の整数でなければなりません。複数の標本で共通の固定種リストを使う場合は0も入力できます。存在しない種を追加しても指数自体は変わりません。調査努力が異なる標本は、あらかじめ比較可能に調整されていない限り混在させないでください。この計算は入力配列の集中度を測るものであり、野外調査の設計を補正するものではありません。全項目の合計は0より大きい必要があります。すべて0の標本には相対存在量の分布がないため、エラーになります。分類解像度も統一してください。一部を属でまとめ、別の生物を種ごとに分けると、見かけの集中度が変わり、比較を誤るおそれがあります。
計算方法と返される項目を確認します
まず、入力された個体数を合計して総存在量を求めます。次に各種の個体数を総数で割って相対存在量を算出し、それぞれを二乗します。優占度指数は二乗した比率の合計であり、一般に D = p の二乗の総和と表されます。二乗により個体数の多い種の影響が大きくなるため、1種が群集を優占すると値が強く反応します。観察された種が1種だけの群集では指数は1です。S 種に存在量が均等に分かれている場合は1を S で割った値となり、その種数で取り得る最小値です。応答には、標本規模を確認できる total_count と、評価した配列項目数を示す species_count も含まれます。後者には個体数0の項目も数えます。この実装はシンプソン優占度指数の比率形式を使用し、n と n から1を引いた値の積に基づく有限標本の式は使用しません。結果を公表する際は、他の方が正しく再計算できるよう、この定義を明記してください。
生態学的背景を保って結果を解釈します
主に、互いに整合する方法で採集・処理された標本間の集中度を比較するためにお使いください。値が大きいほど存在量が集中していますが、どの種が優占しているか、なぜ優占したかまでは示しません。種の同一性、入れ替わり、保全上の重要性が必要な場合は、元の種別表も保存してください。また、この指数を種の豊富さとして説明することはできません。同じ種数を含む2つの標本でも、存在量分布が異なれば優占度は大きく変わります。反対に、種数が異なる群集でも近い値になることがあります。小さな標本では希少種を見落としやすく、見かけの集中度が高まる可能性があるため、標本の深さも重要です。総数が異なる野外データを比較する場合は、希薄化、調査努力の標準化、不確実性解析をご検討ください。報告時には、値とともに標本数、分類範囲、採集方法、式の定義を示します。1から D を引くシンプソン多様度や、1を D で割る逆数多様度もありますが、関連する別の統計量です。本計算機は方向を明確にするため、優占度そのものを返します。
活用例
生態調査区を比較する
同じ方法で調査した2つの区画について、植物の存在量がどちらで強く集中しているかを測定します。
群集の変化を追跡する
攪乱、復元、季節変化の後に反復標本の優占度が上昇しているかを確認します。
生物多様性処理を監査する
出力された分類群別個体数から、文書化された優占度統計を決定論的な API 処理で再計算します。
よくある質問
どの計算式を使用しますか?
各種の個体数を総個体数で割った比率を二乗し、その総和を D として計算します。
優占度指数が高いとはどういう意味ですか?
1に近い値は、観察が少数の種に集中していることを示します。小さい値は、存在量がより均等に分布していることを示します。
個体数に0を含められますか?
はい、個体数0の種も入力できます。ただし、配列全体の合計は0より大きくなければなりません。
シンプソン多様度指数と同じですか?
常に同じではありません。本機能は優占度 D を返します。資料によっては1から D を引いた値をシンプソン多様度指数と呼ぶため、比較前に式をご確認ください。
API の利用料金はいくらですか?
API リクエスト1回の料金は $0.002 です。同じ決定論的計算をブラウザーでは無料で利用できます。
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/stat/simpson-dominance-index \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"counts":[12,8,5,5]}'const res = await fetch("https://api.kit.forhosting.com/stat/simpson-dominance-index", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"counts": [
12,
8,
5,
5
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/stat/simpson-dominance-index",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"counts": [
12,
8,
5,
5
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/stat/simpson-dominance-index", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"counts":[12,8,5,5]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"counts":[12,8,5,5]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/stat/simpson-dominance-index", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"counts": [
12,
8,
5,
5
]
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "stat.simpson_dominance_index",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
制限
max_items | 100000 |
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |