d3NetworkのRポートの例にしたがって、Sankey Plotを作成します(ここで述べるように:https://christophergandrud.github.io/networkD3/)。私は、次のサンプル「エネルギー」のデータセットを読み込む:「エネルギー」データセットをインポートNetworkD3 Sankey diagram in R:各リンクの価値を計算する方法は?
# Load energy projection data
URL <- paste0("https://cdn.rawgit.com/christophergandrud/networkD3/",
"master/JSONdata/energy.json")
Energy <- jsonlite::fromJSON(URL)
は、2つの新しいdata.framesを生成します。ノードとリンク。リンクデータを見てとることは、次の形式を明らかにする:
head(Energy$links)
source target value
1 0 1 124.729
2 1 2 0.597
3 1 3 26.862
4 1 4 280.322
5 1 5 81.144
6 6 2 35.000
を「ソース」列は起源のノードを示す「値」欄は、の値を示しながら、「ターゲット」列は、宛先ノードを表します個々のリンク。
これは概念的には単純ですが、私はEnergy$links
data.frameと同じ形式で作業しているデータセットを取得するのが非常に困難です。私は、次の形式で自分のデータを取得することができたが、私はさらにそれを変換することができる方法についての完全な空白描画しています:ユニークなクライアントの数を集計する
head(sampleSankeyData, n = 10L)
clientID node1
<int> <chr>
1 23969 1 Community Services
2 39199 1 Youth Justice
3 23595 1 Mental Health
4 15867 1 Community Services
5 18295 3 Housing
6 18295 2 Housing
7 18295 1 Community Services
8 18295 4 Housing
9 15253 1 Housing
10 27839 1 Community Services
を私が行うことができるようにしたい何をしています各リンクについて例えば、上記のデータのサブセットでは、クライアント18295により、「1コミュニティサービス」から「2住宅」へのリンクは1の値を有するべきである(「2住宅」から「3住宅」へのリンク「3 Housing」から「4 Housing」まで)。このように、Sankeyの図の例では、Energy$links
と同じ形式でデータを取得したいと考えています。