アプリをダウンロード
フォルダーを選び、編集前に関連ファイルを読むようアシスタントに依頼します。作業の目的と変更範囲を明確にしてください。
10^9以下の非負整数の計数値1〜4096個について、未補正のGini係数を正確な分数で返します。同値、並べ替え、全ゼロ入力を試し、最後の場合はゼロと定義して公平性を判断せず真偽値を拒否します。
フォルダーを選び、編集前に関連ファイルを読むようアシスタントに依頼します。作業の目的と変更範囲を明確にしてください。
対応するエンドポイントを選択します。利用できるツールや回答品質は、設定したモデルとサーバーに依存します。
変更内容とコマンド出力を確認します。結果を採用する前にプロジェクトの検証を実行してください。生成コードが自動的にテスト済みになるわけではありません。
実際の動作を期待する結果と比較します。検証に失敗した場合は、次の変更を加える前に原因を調べてください。
from fractions import Fraction
def gini_fraction(values):
if type(values) is not list or not 1 <= len(values) <= 4096 or any(type(x) is not int or not 0 <= x <= 10**9 for x in values):
raise ValueError("gini.values")
total, n = sum(values), len(values)
if total == 0:
return Fraction(0, 1)
numerator = sum((2*i-n-1)*value for i, value in enumerate(sorted(values), 1))
return Fraction(numerator, n*total)
適用前に確認. 変更内容とコマンド出力を確認します。結果を採用する前にプロジェクトの検証を実行してください。生成コードが自動的にテスト済みになるわけではありません。