問題タブ [hcluster]

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.

0 投票する
2 に答える
3099 参照

python - Python の階層的クラスタリングの問題

相関距離メトリック(つまり、1 - ピアソン相関)による2次元マトリックスの階層的クラスタリングを行っています。私のコードは次のとおりです(データは「データ」という変数にあります):

私が得るエラーは次のとおりです。

このエラーの原因は何ですか? 私が使用するマトリックス「データ」は単純です:

1 - ピアソン相関を取るときに pdist が負の数を生成する方法がわかりません。これに関するアイデアはありますか?

ありがとうございました。

0 投票する
1 に答える
689 参照

python - xpのpython 2.6でpypiからhclusterをインストールできません

hcluster に付属の setup.py ファイルに次の行を追加して使用しています。

次に、次のように setup.py を使用しました。

"c:\program files\python26\python.exe" "c:\Program Files\Python26\Lib\site-packages\hcluster-0.2.0\setup.py" インストール

次のエラー メッセージが表示されます。

hcluster の読み取りまたは書き込みを試みているかどうかはわかりません。

どんな助けでも大歓迎

0 投票する
1 に答える
1153 参照

python - Python hclusterで疎行列を使用するには?

Pythonでhclusterライブラリを使用しようとしています。hcluster で疎行列を使用するのに十分な Python の知識がありません。誰か助けてください。だから、私がやっていること:

data.dmp には、次のような行列が含まれています。

行列の右上部分のみが含まれます。私はそれを英語で正しく綴る方法がわかりません:)したがって、すべての数字は主対角線よりも上にあるため、data.dmpには次が含まれます:1 0 1, 0 1 , 0

理由は不明ですが、hcluster は逆の値を使用します。たとえば、A!=C の場合は 0 を使用し、A == D の場合は 1 を使用します。

リンケージY

したがって、行列 Z が必要です (hcluster を正しく使用した場合は?)

しかし、次の問題があります。

  1. 大量の入力データに疎行列を使用したいのですが、今のように入力データを生成するのに時間がかかるため、別の言語から python にデータをインポートする必要があるため、テキスト ファイルを読み取る必要があります。親切に、pythonの第一人者はそれを作る方法を提案していますか?

  2. python hcluster を使っていた人へ、膨大な量のデータ、数百行を処理する必要があるのですが、hcluster でできるのでしょうか? このアルゴリズムは本当に正しい HAC を生成しますか?

読んでくれてありがとう、助けてくれてありがとう!

0 投票する
1 に答える
2087 参照

python - python hcluster、距離行列、および凝縮距離行列

モジュール hcluster を使用して、距離行列からデンドログラムを計算しています。私の距離行列は、次のように生成された配列の配列です。

次に、コマンドdistVec = hcluster.squareform(distMatrix)を使用して行列を圧縮ベクトルに変換し、 で連鎖行列を計算しvecLink = hcluster.linkage(distVec)ます。

これはすべて正常に機能しますが、凝縮されたベクトルではなく距離行列を使用して連鎖行列を計算するとmatLink = hcluster.linkage(distMatrix)、別の連鎖行列が得られます (ノード間の距離ははるかに大きく、トポロジはわずかに異なります)。

これは、hcluster が圧縮されたベクトルでのみ機能するためなのか、それとも途中で間違いを犯しているのかはわかりません。

ご協力いただきありがとうございます!

0 投票する
2 に答える
2487 参照

python - hclusterによって生成されたndarrayをete2パッケージで使用するためのNewick文字列に変換する

次のコマンドを実行して作成されたベクトルのリストがあります。

ここで、document_listは、私が分析しているWebドキュメントのコレクションです。次に、階層的クラスタリングを実行します。

これにより、次のようなndarrayが生成されます。

このndarrayをete2Tree()コンストラクターに渡すことができるnewick文字列に変換して、ete2が提供するツールを使用してnewickツリーを描画および操作できるようにすることは可能ですか?

これを試してみるのも理にかなっていますか?そうでない場合は、同じデータとete2を使用してツリー/樹状図を生成できる別の方法があります(dendropyやhcluster自体などの樹状図を描画できる他のパッケージがあることを認識していますがete2をすべて同じように使用したいですか)?

ありがとう!

0 投票する
1 に答える
3477 参照

python - hcluster をビルドしてインストールするには?

http://pypi.python.org/pypi/hclusterから hcluster をダウンロードし、フォルダーに解凍してから、 と入力します"python setup.py install"。次のように表示されるため、問題ないようです。

しかし、「hcluster をインポート」しようとすると、次のように表示されます。

私はPythonモジュールのビルド、コンパイル、インストールなどの初心者ですが、誰かがこの問題を解決するための詳細な手順を示すことができますか? ありがとう

(私は Windows XP と Python 2.6.1 を使用しています)

0 投票する
1 に答える
3683 参照

python - 類似度行列が与えられた scipy による系統樹

Python でジャカード類似度行列を計算しました。最高の類似性を最低のものにクラスタリングしたいのですが、どのリンケージ関数を使用しても、同じデンドログラムが生成されます! この関数は、行列が元のデータのものであると想定しているように感じますが、最初の類似行列は既に計算済みです。この類似性マトリックスをデンドログラムに渡して正しくプロットする方法はありますか? それとも、行列を出力して、単に R で実行する必要がありますか。単語の類似性を計算しているため、元の生データを渡すことはできません。助けてくれてありがとう!

ここにいくつかのコードがあります:

このコードを実行すると、完全に逆向きのデンドログラムが表示されます。どのリンケージ タイプを使用しても、同じデンドログラムが生成されます。これは直感的に正しくありません。