5

R では、リストが便利な構造であることがわかりました (Python の辞書のように)。hash非常によく似た機能を提供していると思われるパッケージに出くわしました。

リストとハッシュの間に、一方を他方よりも望ましいものにする実際的な違いはありますか? (リスト以外はベースの一部です)

これがあまりにもオープンエンドではないことを願っていますが、これの範囲を狭める方法がわかりません.

4

1 に答える 1

5

hashドキュメントから:

パスバイリファレンス。グローバルに存在するコピーは1つだけなので、環境とハッシュはRの特別なオブジェクトです。関数の引数として指定すると、ローカルコピーは作成されず、関数内のハッシュへの変更はグローバルに反映されます。

パフォーマンス。ハッシュは環境に基づいており、環境の内部ハッシュテーブルを使用して非常に高速になるように設計されています。小さなデータ構造の場合、ほとんどすべての場合、リストはハッシュよりもパフォーマンスが優れています。より大きなデータ構造、つまり100〜1000を超えるキー値ペアの場合、ハッシュのパフォーマンスが速くなります。それをはるかに超えて、ハッシュのパフォーマンスはネイティブリストをはるかに上回っています。

于 2012-06-02T15:26:52.480 に答える