質問:
なぜバイオコンダクター?
Peter
2017-06-11 06:28:58 UTC
view on stackexchange narkive permalink

バイオインフォマティクスコミュニティにとって、Bioconductorを使用する利点は何ですか?

概要」セクションを読み、論文をざっと読みました。 、しかしそれでも実際には答えられません。

Bioconductorは年に2回リリースされることを理解しています( R とは異なります)が、最新バージョンのパッケージを使用したい場合は、とにかく開発バージョンを使用する必要があります。 承認のスタンプは、タグなどを使用するとはるかに簡単に作成できるため、維持するための余分な(そして不要な)レイヤーのように聞こえます。

これに関連して、パッケージをBioconductorに受け入れさせる開発者としての利点は?

+ 1…リポジトリを一元化するというアイデアは、想定されるメリットの明確な証拠がないため、ますます時代遅れになっています。
「CRANよりもBioconductorを使用する利点は何ですか?」という質問です。または「あらゆる種類の中央リポジトリを持つことの利点は何ですか?-例としてBioconductorを取り上げましょう」?
@KamilSJaron私の質問はどちらでもない-または両方です:_CRANに対するBioconductorまたは同様の中央リポジトリを持つことの利点は何ですか?_どちらかといえば、焦点は、ウェブサイトではなく、バイオインフォマティクスのRリポジトリを持つことにあります。承認されたパッケージが一覧表示されます。
四 答え:
Kamil S Jaron
2017-06-11 12:13:31 UTC
view on stackexchange narkive permalink

コミュニティの中央リポジトリの利点

パッケージの中央リポジトリがあると非常に便利です。いくつかの理由があります:

  • 依存関係の解決が非常に簡単になります。すべての依存関係を手動でインストールするのは大変ですが、危険でもあります(ポイント2)。
  • パッケージ互換性!依存関係のあるパッケージをインストールする場合は、すべての依存関係の正しいバージョンを確実にインストールしたいと思います。
  • 信頼性は、統合された統合テストのおかげです。 Bioconductor は、開発者に優れたテストを作成するように強制しようと懸命に努力しています。また、提出されたパッケージを手動でテストする人もいます。また、メンテナンスされていないパッケージも削除します。 Bioconductor のパッケージは(合理的に)信頼できます。

結局、Rパッケージの開発バージョンをインストールすることは非常に悪い習慣 strongです。 >再現性のある科学のために。開発者がGitHubリポジトリを削除した場合、使用したコミットハッシュではコードを取得するのに十分ではありません。

開発者にとっての中央リポジトリの利点

忘れました開発者がパッケージを Bioconductor に送信する利点について:

  1. パッケージがより見やすくなります
  2. ユーザーは次のことを保証します。コードは第三者によってチェックされました
  3. パッケージはユーザーが簡単にインストールできるようになります
  4. パッケージは標準化されたビネット、バージョンタグ、テストを使用するように強制されます->よりアクセスしやすくなりますコミュニティごとにコードを構築する
  5. ol>

    CRANに対するBioconductor固有の利点

    コミュニティサポートページに大きな利点があります Bioconductor によって提供されます。 @Llopisの包括的な詳細

私はあなたが欠けていると思います:データパッケージ。 CRANには非常に厳しいファイルサイズ制限(5 MB)があり、生物学のニーズがあります。ゲノム。あなたのポイント1と3は議論の余地があります(1:バイオはい、そうでなければいいえ; 3:私はそれがより難しいと主張します、外部インストーラーが必要です)。
とにかく、ゲノムデータが内部に保存された書き込みパッケージは必要ありません。データベースからデータをプルするためのパッケージを作成します。しかし、要点を説明します。コミュニティにとっての全体的な利点と開発者にとっての利点の両方に番号を付けたとき、私は賢明な動きをしたことがわかりました。
わかりました。上限を箇条書きにして、中央リポジトリ全般について話していることを明確にしました。
@KamilSJaronデータパッケージに関しては、Bioconductorで確立されたベストプラクティスです(BSGenomeを参照)が、私は同意する傾向があります。Bioconductorデータパッケージがディスクを乱雑にする方法が嫌いです。
llrs
2017-06-11 15:13:24 UTC
view on stackexchange narkive permalink

バイオインフォマティックコミュニティにBioconductorを使用する利点のリストは次のとおりです。

  • アウトリーチフィールド用のリポジトリ、その言語で。

バイオインフォマティクス(R)に関連する一部のパッケージは、個人リポジトリ、CRAN、github、bitbucket、sourceforgeを通じて配布されますが、あまり使用されておらず、見つけるのが困難です。
そのようなものがあります他の言語での取り組み:Biopython、Bioperl、Biojava、...
CRANでサブジェクトに関連するリポジトリを見つけるのも難しく、BiocViewsがありません。同等のものはオプションであり、通常は入力されていません。方法を探すときに非常に便利です。

  • 品質:Bioconductorでは、各パッケージがLinux、Windows、iOSでテストされ、すべてのメジャーで機能することを確認しています。運用システム(すべての依存関係を含む)。

こののようなまれなケースでは、パッケージは特定のプラットフォームでサポートされていませんが、ビルドレポートを確認することで確認できます。 a>。
エクスポートされたすべての要素にビネットと例を提供する必要があります(ビネット、例、テストに合格する必要があります)。手動レビューがあるため、CRANよりも厳しい品質でパッケージをインストールできる必要があります(私の機能の1つでコメントを指摘しています!)。
Dockerも提供します。基本パッケージの画像。 Bioconductorを使用するために最新のRバージョンをインストールする必要はありません!ただし、開発者は(少なくともBioconductorサーバーによってチェックされた場合)パッケージが次のRリリースで機能し続けることを保証するためにそうします。

  • 再利用:Bioconductorは、多数のアプリケーションに基本的な要素を提供します。

たとえば、summaryExperimentクラスは、同様のオブジェクトを必要とするすべてのパッケージがそれを使用できるように(すべきである)提供されています。または、GSEABaseは、GSEA濃縮分析を処理するための基本パッケージであり、遺伝子セットおよびコレクションの関数、メソッド、クラスを提供し、誰でも簡単に独自のGSE分析を作成できるようにします。
他の人の作業に基づいて構築する方が簡単です。同じ品質基準に従っていることがわかっている場合。

  • サポート:Q&Aをサポートするには、パッケージメンテナーをウェブページに登録する必要があります。

CRANでは通常、サポートは各パッケージによって独自の方法で提供されますが、Bioconductorでは、同じ中央の場所に投稿することで、メンテナとユーザーに直接連絡できます。

CRANに提出してみましたか?私が理解している限り、彼らは[テストを実行し、パッケージレビューを実行する](https://cran.r-project.org/web/packages/policies.html);一部の人々は、CRANの人々が[あまりにも衒学的]であると不平を言うことさえあります(http://kbroman.org/pkg_primer/pages/cran.html)。
OPは「なぜ中央リポジトリ」についてであり、CRAN / Bioconductor聖なるものが私が答えから始めたものです。
Devon Ryan
2017-06-11 15:09:42 UTC
view on stackexchange narkive permalink

CRANを使用するのではなく、バイオコンダクターパッケージを使用する開発者としての利点について:

  1. パッケージの品質には階層があり、バイオコンダクターが一番上にあります(CRANと次に「ランダムなgithubリポジトリ」)。多くの優れたCRANパッケージがありますが、平均的な生体伝導体パッケージは、より適切にテストされ、文書化されています。したがって、ユーザーとして使用できる2つの異なるパッケージがあり、一方がバイオコンダクターで、もう一方がCRANである場合、バイオコンダクターパッケージを使用します。
  2. 視認性が高くなります。バイオコンダクターパッケージはより高く評価されているため、それらもより目立つようになります。さらに、さまざまな「ビュー」(「選択的スプライシング」や「文字起こし」など)により、関連するパッケージを簡単に見つけることができます。 CRANはいつでも検索できますが、このようなタグ付けを許可すると、発見に役立ちます。
  3. ol>
私はCRANとBioconductorの両方から多くのパッケージを使用してきましたが、CRANパッケージが何らかの意味で悪いことに気づいていません。 Bioconductorからのいくつかのパッケージのドキュメントがもっと悪いことに気づきました(少なくともそれは数年前の状態でした)。
その時、あなたはCRANパッケージで幸運に恵まれました。
品質階層が間違っていることは間違いありません。パッケージがGithubで維持されている場合、その品質は実際には平均的なCRANまたはBioconductorパッケージの品質よりも優れている可能性があります。これは、Githubが初心者のRプログラマーの間で広く普及するとすぐに変わる可能性がありますが、現在でも維持されていると確信しています。
@KonradRudolph最初の文の「if」は大きなものです。
@DevonRyan私の間違い、私は「ホストされている」という意味でした。維持されないリスクがありますが(ただし、集中型リポジトリについても同じことが言えます)、場所= Githubでの品質の確率は依然として高いです。 Githubでも品質の*変動*が高い可能性があることは認めますが、それでもわかりません。
@KonradRudolphほとんどのBioconductorパッケージはGitHubで管理されています(少なくとも私が使用したほとんどのパッケージ)。私はGitHubRパッケージも持っていますが、それは間違いなくテストに合格していません。それは私の使用方法で私のコンピューター上で動作しています。 GitHubに参加していないことは、品質の兆候ではありません...しかし、パッケージがそこにあるだけの場合、誰もそれを知らないので、バグレポートはありません。
L42
2017-06-11 15:18:56 UTC
view on stackexchange narkive permalink

最も重要な理由は、Bioconductorが共通のデータ構造と基本パッケージのセットを増やしていることです。パッケージXとパッケージYが同じタイプのデータを処理する必要がある場合、コアBioconductorパッケージZに共通のデータ構造があると、私たちの生活がとても楽になります。パッケージXで何かを実行し、結果を取り出して、パッケージYでデータを処理し続けることができます。これは、パッケージZで定義されたデータ構造と互換性のあるバージョンのパッケージXおよびYを使用しているために機能します。Bioconductorチームすべてのパッケージが共通のデータ構造と可能な場合は既存のパッケージを使用するようにします。これにより、すべてが同じページに表示され、人々が何度も車輪の再発明を行わないようになります。

また、 パッケージをBioconductorに受け入れさせるには洗練されたプロセスがあります。これにより、パッケージは他のBioconductorパッケージですでに利用可能なデータ構造と関数を使用し(妥当な場合)、パッケージが適切に記述され、適切なドキュメントがあり、十分にテストされていることが保証されます。



このQ&Aは英語から自動的に翻訳されました。オリジナルのコンテンツはstackexchangeで入手できます。これは、配布されているcc by-sa 3.0ライセンスに感謝します。
Loading...