1. 学ぶ
  2. /
  3. コース
  4. /
  5. R で学ぶネットワークデータの予測分析

Connected

演習

エッジの種類を抽出する

この演習では、customer データフレーム内の顧客IDを customer edgelist と照合し、各エッジが churn、non-churn、もしくは混合エッジのどれに当たるかを確認します。 match() 関数を使って、edgelist に2つの列を追加します。

  1. from 列の churn ステータスを格納する fromLabel
  2. to 列の churn ステータスを格納する toLabel

match(x, y) コマンドは、x が y のどこにあるかの位置ベクトルを返します。上図では match(edgeList$from, customers$id) は 1,1,1,2,2 です。たとえば、edgeList$from の4行目(id が 393 の顧客)は、customers$id の2番目の要素です。 この顧客の churn ラベルは customers[2,2]、すなわち 0 です。 同様に、edgeList$from の各顧客の churn ラベルは customers[match(edgeList$from, customers$id),2] となります。

指示

100 XP
  • customers$id を edgeList$from にマッチさせ、customers$churn を取り出して、edgeList データフレームに FromLabel という列を追加し、from ノードのラベルを入れてください。
  • to エッジについても同様に実施し、この列名は ToLabel としてください。
  • FromLabel と ToLabel の列を合計した値を格納する edgeType 列を edgeList データフレームに追加してください。
  • 各エッジタイプの数を確認するために、table() 関数を使用してください。