問題タブ [pvclust]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
r - R で pvclust を使用したクラスター分析
var 5-var10 など、特定の列 (変数) のクラスター分析を行いたいと考えています。そのためpvclust
にRで使用しました。次に、このクラスターの列を実際のデータフレームに追加したいと思います。誰でもこの問題を解決するのを手伝ってくれませんか。私が使用したコードを以下に示します。
r - R名前を数字に変換する
寄付と寄付者の名前が記載されたデータフレームがあります。
pvclust
パッケージを使用してクラスタリングを実行しようとしています。残念ながら、パッケージは数値以外のデータを取得していないようです。
2つの質問があります。
1)これをより良くする別のパッケージまたは方法はありますか?
2)ドナー名リストを「正規化」する方法はありますか?つまり、一意のドナー名のリストを取得し、それぞれにID番号を割り当ててから、文字名の代わりにID番号をデータフレームに挿入します。
r - 計算済みの dist オブジェクトに pvclust R 関数を適用する
R を使用して階層的クラスタリングを実行しています。最初のアプローチとして、hclust
次の手順を使用して実行しました。
- 距離行列をインポートしました
- 関数を使用してオブジェクト
as.dist
に変換しましたdist
- 私はその物体
hclust
の上を走るdist
Rコードは次のとおりです。
この時点で、関数で同様のことをしたいと思いますpvclust
。dist
ただし、事前計算されたオブジェクトを渡すことができないため、できません。dist
Rの関数によって提供される距離の中で利用できない距離を使用していることを考慮して、どのように進めることができますか?
r - hclust で生成されたデンドログラムに対する pvclust
pvclust R パッケージを使用して、R の通常の階層的クラスタリング hclust 関数を使用して生成したクラスターの重要性を判断することに興味があります。4 つの発生時点での ~ 8000 の遺伝子とその発現値で構成されるデータマトリックスがあります。以下のコードは、データに対して通常の階層クラスタリングを実行するために使用するものを示しています。私の最初の質問は: hr.dendrogram プロットを取得して、それを pvclust に適用する方法はありますか? 第二に、pvclust は列をクラスター化するようであり、私がやりたいように行ではなく列全体で比較されるデータにより適しているようです (遺伝子ではなくサンプルをクラスター化するために pvclust が使用される多くの例を見てきました)。私がやりたいことと同様の方法で pvclust を使用した人はいますか? 通常の階層クラスタリングの簡単なコードは次のとおりです。
これについて何か助けていただければ幸いです!
r - pvclust を使用して 1 次元データをクラスター化する
この質問を読んでくれてありがとう。R でクラスター化する 1 次元データがいくつかあります。基本的なhclust
コマンドは正常に機能します。ただし、pvclust
コマンドは 1 次元データを使用せず、次のように言い続けます。
データにすべてゼロの行を追加するという回避策を見つけました。したがって、データは次のようになります。
それから私は走りましたpvclust
、そしてそれはうまくいきました!
しかし、この回避策が pvclust の背後にある数学を台無しにするのではないかと懸念しています。私が正しい/間違っているかどうか、そして私の質問に対するより良い解決策があるかどうか、誰か教えてもらえますか?
ありがとうございました!
r - R でのクラスター分析: pvclust から決定論的な結果を得るにはどうすればよいですか?
pvclust
R でのクラスター分析には最適ですが、バッチ操作の一部として実行すると、同じデータに対して異なる結果が得られるのは面倒です。明らかに、同じデータの「正しい」クラスタリングが多数あり、pvclust
ランダム性を使用して特定の実行のクラスタを決定しているようです。しかし、決定論的な結果を得る方法はありますか?
最小限の繰り返し可能な分析パッケージ (データと R スクリプト、およびクラスタリングの解釈を含む別の文書) を提示できるようにしたいと考えています。その後、たとえばプロットの美的外観を変更するなどして、他の人が分析に追加することができます。これで、解釈は、他の人が を含むスクリプトを実行したときに得られるものと常に同期しなくなりますpvclust
。
r - RでNEWICK形式でクラスタの(ツリー)ノードのブートストラップされた値を追加する方法
Interactive Tree of Life Web ベースのツール(iTOL)を使用してツリー (クラスター) を作成したいと考えています。入力ファイル (または文字列) として、このツールはNewick 形式を使用します。これは、括弧とコンマを使用して辺の長さを持つグラフ理論ツリーを表す方法です。それに加えて、クラスターのノードのブートストラップ値などの追加情報がサポートされる場合があります。
たとえば、ここではパッケージを使用してクラスター分析用のデータセットを作成しました。clusterGeneration
その後、クラスター分析を実行し、パッケージを使用してブートストラップによってクラスターのノードのサポートを評価しました。pvclust
クラスタとブートストラップ値は次のとおりです。
Newick ファイルを作成するために、次のape
パッケージを使用しました。
write.tree
関数は、ツリーを Newick 形式で出力します。
((x2:0.45,x6:0.45):0.043,((x7:0.26,(x4:0.14,(x1:0.14,x3:0.14):0.0064):0.12):0.22,(x5:0.28,x8:0.28 ):0.2):0.011);
これらの数値は、枝の長さ(クラスターのエッジの長さ) を表します。iTOLヘルプ ページ(「独自のツリーのアップロードと操作」セクション) の指示に従って、手動でブートストラップされた値を Newick ファイルに追加しました (以下の太字の値)。
((x2:0.45,x6:0.45) 74 :0.043,((x7:0.26,(x4:0.14,(x1:0.14,x3:0.14) 55 :0.0064) 68 :0.12) 100 :0.22,(x5:0.28 ,x8:0.28) 100 :0.2) 63 :0.011);
文字列を iTOL にアップロードすると正常に動作します。ただし、私は巨大なクラスターを持っており、手動で行うのは面倒です...
質問:手入力の代わりにそれを実行できるコードは何ですか?
ブートストラップ値は、次の方法で取得できます。
Newick ファイルの形成に使用される枝の長さは、次の方法で取得できます。
write.tree
デバッグ後に関数がどのように機能するかを理解しようとしました。しかし、内部的に関数を呼び出していることに気付き.write.tree2
、元のコードを効率的に変更して、Newick ファイルの適切な位置でブートストラップされた値を取得する方法がわかりませんでした。
どんな提案でも大歓迎です。
r - 階層を維持しながら pvclust から重要なサブツリー/クラスターを抽出する
次の R コードは、ボストン データセットでマルチスケール ブートストラップ リサンプリングを介して階層クラスターを生成します。
最後に、clusters$clusters
重要なクラスターの要素を一覧表示します。
階層を破棄せずにこれらの同じアイテムを抽出する方法はありますか? たとえば、次のようにエッジの順序を維持します。
それとも似たようなもの?前もって感謝します。
sequence - 独自に構築された関数のブートストラップ pvclust が機能しない
文字列として表される異なる「空間使用のシーケンス」間の類似性を測定するために、シーケンス分析メソッドを使用しています。以下は、2 つのシーケンスに対して 3 つのクラス (A: 都市、B: 農業、C: 山) を使用した理論上の例です。
シーケンス間の類似性を測定するために使用する距離尺度は、ハミング距離です (つまり、シーケンスを同一視するためにシーケンス内の文字を置換する必要がある頻度を測定します。上記の例では、順番に4文字を置換する必要があります)。シーケンスを同一視します)。ハミング距離の計算後に得られた距離行列 (可能なすべてのシーケンスのペアの距離または非類似度を与える) に基づいて、Ward (ward.D2) のクラスタリング方法を使用して樹状図が作成されました。
ここで、関連するクラスターを識別するために、クラスターの堅牢性の適切な尺度も含めたいと思います。このために、ブートストラップ値を計算するためのいくつかの方法を含む pvclust を使用しようとしましたが、距離測定の数に制限されていました。リリースされていないバージョンの pvclust を使用して、適切な距離測定 (つまり、ハミング距離) を実装しようとし、ブートストラップ ツリーを作成しようとしました。スクリプトは機能していますが、結果が正しくありません。1000 の nboot を使用してデータセットに適用すると、「bp」値は 0 に近く、他のすべての値は「au」、「se.au」、「se.bp」、「v」、「c」、「pchi」です。は 0 であり、クラスターがアーティファクトであることを示唆しています。
ここにスクリプトの例を示します。
データは、非常に均一なシミュレートされたシーケンスに関するものです (たとえば、1 つの特定の状態を使用し続ける)。そのため、各クラスターは確実に有意である必要があります。計算時間を制限するために、ブートの数を 10 だけに制限しました。
この分析を行うために、R パッケージ pvclust の未リリース バージョンを使用しています。これにより、独自の距離法 (この場合はハミング) を使用できます。誰かがこの問題を解決する方法を知っていますか?
r - Rのpvclustで「ワード」メソッドを使用する
pvclust
R のパッケージを使用して、 p 値を持つ階層クラスタリング デンドログラムを取得しています。
「ウォード」クラスタリングと「ユークリッド」距離法を使用したいと考えています。を使用すると、どちらも私のデータで正常に動作しhclust
ます。ただしpvclust
、「無効なクラスタリング メソッド」というエラー メッセージが引き続き表示されます。この問題は明らかに「病棟」法に起因します。「平均」法などの他の方法はうまく機能し、「ユークリッド」法自体もうまく機能するからです。
これは私の構文と結果のエラーメッセージです:
私のデータ マトリックスの形式は次のとおりです (28 か国 x 20 のポリシー ディメンション)。
pvclust
パッケージによって提供されるデータセット(lung
)とRで提供される他のデータ(パッケージなど)で「病棟」を使用しようとしましたがBoston
、MASS
成功しませんでした。pvclust
?