【JKI】035_Linkedin_Network_Graph_01_つながり申請中
【JKI_035】課題を確認
Just KNIME It! (JKI)
今回の挑戦はこちら
問題文のところだけをDeepL翻訳し少し加筆して以下に
【LinkedInのデータ】
私もLinkedInのアカウントはあるにはあるんで、データは取得してみました。でも21人しかつながってないんです…。繋がってくれている皆さんありがとう。
https://www.linkedin.com/in/jp-knimest-5b5a73235/
なのでサンプルデータを借用します。
いつもの様にworkflow内に格納して相対パスで読み込みます。
設定:
結果:
自分も含まれていて嬉しかったです。
これ、本物のデータですね。個人情報とかええんかな。公開されてるからいいのか。
【解析対象データのETL】
【Row FilterとGroupBy】空白行を削除して集計
結果:
考察:
この後メンバー数での上位3グループをグラフで可視化するにあたり、どこまでサンプルデータを表示対象にするかを考えました。単純に一覧を見るとKNIME, Amazon, Metaですね。恥ずかしながらMetaってどんなグループかわかってなくてググりました。
で、データを見返すと、MetaのほかにFacebookの方もリストにあり、これは分けて集計してはいけないのではないかと思い至りました。
【Table CreatorとCell Replacer】所属グループという属性を付与
設定:
会社名リストを見て、同じグループにしようと思ったものをまとめるため、Table Creatorを使ってConglomerateというカラムで定義しました。
そしてCell Replacerで
元のデータテーブルにAffiliationカラムを勝手に追加しました。
結果:
多彩な業種の方がKNIMEとちながっているんだなと興味深く拝見しました。しかし、786名の全てをプロットするとグラフが見にくくなることから、今回の解析対象は3大グループの人たちだけにします。
全く課題には出ていない処理を加えていますが、後ほど紹介する通り、最近JKIの公式解答が自由奔放に楽しんでいるのを見て、見習うことにしました。もう正解探しというよりは自分ならこうするって好きにやらせてもらっています。これもまた一興。
【各種フィルターと文字列処理】データ選抜とFull_Nameデータ生成
単なるデータ整形なので設定と結果を示すのみとします。
結果:
123名に絞られました。
ん? Peter 👋 さん、絵文字がミドルネームになってる。
合ってるのかなとLinkedInでも確認し、面白そうな方だなとつながり申請もしてしまいました。承認してもらえるかなぁ。
課題にないことばかりしてますが、データ前処理はひとまず完了しました。
次回はグラフでの可視化に挑みます。
KNIME Hubに解答は上げています。
おまけ:
【JKI_034 感想戦】
先週のJust KNIME It! 第34回は任意の英文をランダムに並び替える方法を探りました。
公式解答はこちらです。
JKIのサイトに上げられたSolution Detailsを見て、度肝を抜かれました。Google翻訳し編集して一部引用します。
えっ、何が始まった?
課題文からは想像しがたい展開です。
そして14640行から100行を抽出したのち1行ずつをループ処理するのですが、
その後1行につき10行のランダム化した文字列を出力するループへ。
GroupByノードでのつなぎ方は効率が良かったです。
設定:
青色表示した通り、Concatenateで項を結合して文字列を作るときに、半角スペースで繋ぐ設定となっています。
Bag of Wordsの利用例を知ると言う意味でも興味深い例ではありました。
でも、ここまでする必要あります!?
公式なのに何て自由な発想だろうと感心しました。
私も結構遊ばせてもらったし、楽しい課題でしたね。
記事を読んでいただきありがとうございます。 先人の智慧をお借りしつつ、みなさんに役立つ情報が届けられたらと願っています。 もしサポートいただけるなら、そのお金はKNIMEの無料勉強会の開催資金に充てようと思います。