Upgrade to Pro — share decks privately, control downloads, hide ads and more …

LT: BPStudy#135 「NetworkXではじめる情報構造化 〜 たくさんあるドキュメントの全体像を俯瞰する」

komo_fr
November 29, 2018

LT: BPStudy#135 「NetworkXではじめる情報構造化 〜 たくさんあるドキュメントの全体像を俯瞰する」

「BPStudy#135〜エンジニアの知的生産術」でのLT資料です。
イベントページ: https://bpstudy.connpass.com/event/104549/

komo_fr

November 29, 2018
Tweet

More Decks by komo_fr

Other Decks in Programming

Transcript

  1. Who am I ? • @komo_fr (Tomoko FURUKI) • ͓͠͝ͱɿ

    • લɿҩྍ৘ใγεςϜͷઃܭɾ࣮૷ • ࠓɿPythonΛ࢖ͬͯσʔλΛݟͨΓ
 ɹɹπʔϧΛ࡞ͬͨΓ
  2. ख๏΋ಓ۩΋৭ʑ ख๏ ಓ۩ πʔϧɾϥΠϒϥϦ 1ZUIPO /FUXPSL9 QZUIPOJHSBQI 3 J(SBQI +BWB4DSJQU

    %KT ՄࢹԽͷΈ σεΫτοϓܥ (6*πʔϧ $ZUPTDBQF (FQIJ QBKFL ՄࢹԽ த৺ੑͳͲॾࢦඪͷࢉग़ ίϛϡχςΟݕग़ FUDʜ
  3.      Style Guide for Python Code

    The Zen of Python Docstring Conventions 1&1 1&1 1&1 1&1    1&1    1&1    ྡ઀ߦྻ BEKBDFODZNBUSJY TUBSU FOE 1&1 1&1 1&1 1&1 1&1 1&1 ΤοδϦετ FEHFMJTU ωοτϫʔΫߏ଄ͷσʔλදݱ
  4. ྡ઀ߦྻσʔλΛಡΈࠐΈม׵ import pandas as pd import networkx as nx #

    ྡ઀ߦྻͷcsvσʔλΛpandasͷσʔλϑϨʔϜʹಡΈࠐΉ df = pd.read_csv(‘ྡ઀ߦྻ.csv’) # NetworkX 2Ҏ߱ͳΒ͜ΕͰҰൃ G = nx.from_pandas_adjacency(df, create_using=nx.DiGraph)
  5. ֤ϊʔυʹ৘ใΛ෇༩Ͱ͖Δ 5JUMF 4UZMF(VJEFGPS 1ZUIPO$PEF 4UBUVT "DUJWF 5ZQF 1SPDFTT $SFBUFE +VM

    5JUMF ʜ 4UBUVT ʜ 5ZQF ʜ $SFBUFE ʜ 5JUMF ʜ 4UBUVT ʜ 5ZQF ʜ $SFBUFE ʜ   
  6. louvainΞϧΰϦζϜΛ࢖͏ • python-louvain • https://python-louvain.readthedocs.io/en/ latest/api.html • NetworkX͔Β࢖͑Δ ൃද࣌ͷࢿྉʹʮNetworkX͔Β࢖͑Δʯͱॻ͍͍ͯͨͷͰ͕͢ɺਖ਼͘͠͸ ʮNetworkXͷσʔλߏ଄Λ࢖͑ΔʯͰͨ͠ɻ

    python-louvainࣗମ͸ɺݱࡏNetworkXͱ͸ผͷOSSͰ͢ɻ 2013೥ʹpython-louvainΛNetworkXຊମʹϚʔδ͠Α͏ͱ͍͏issueཱ͕ͬͯ ͍ΔͷͰ͕͢ɺݱࡏ͸࡞ۀ͕ࢭ·ͬͨ··Openʹͳ͍ͬͯΔΑ͏Ͱ͢ɻ https://github.com/networkx/networkx/issues/951 ൃදޙͷ௥ه
  7. ஍ਤͷΑ͏ͳײ֮ • ݁ہͷͱ͜Ζɺ࣮ࡍͲ͏ͳͷ͔͸ݱ஍ʹ଍ΛӡͿʢ= PEPͷத ਎ΛͪΌΜͱಡΉʣ͜ͱൈ͖Ͱ͸Θ͔Βͳ͍ • Ͱ΋ཱྀ׳Ε͍ͯ͠ͳ͍΍͕ͭ஍ਤແ͠Ͱา͘ͷ͸ͭΒ͍ • ͳΜͱͳ͋͘ͷลʹࢁ΍઒ʢಛ௃తͳPEPʣ͕͋Δ •

    ͋ͷล͸ཱྀͷ೉౓ߴͦ͏͔ͩΒࠓ͸ආ͚Α͏ʢඃࢀর਺ଟ͍ͷ ʹԘ௮͚ʹͳͬͨPEPͱ͔ʣ • ͬ͘͟Γ͜͏͍͏஍Ҭʢαϒάϧʔϓʣ͕͋ΔΜͩͳ͊ • ʢ೔ʑߋ৽͞Ε͍ͯΔͷͰʣͨ·ʹ஍ܗͷେن໛มԽ͕ى͜Δ
  8. ·ͱΊ • ໨͕࣍ͳ͍େྔͷυΩϡϝϯτͷʮେ·͔ͳߏ଄ʯͬͯͲ͏΍ͬ ͯ೺Ѳ͢ΔΜͩΖ͏ʁ • ࣮ࡍʹNetworkX & PythonͷެࣜυΩϡϝϯτΛ࢖ͬͯΈͯ ΍ͬͯΈͨ •

    ΍ͬͯΈΔͱ໘ന͍΋ͷ΋͋Δ൓໘ɺᡰʹམͪͳ͍΋ͷ΋͋Δ • ͋Δҙຯʮ໨తʯ͕Ͱ͖ͯ͘Δ • Next Step → ໨తΛ࣋ͬͯಡΉʁʁ • ಛఆͷPEPͷ1hop໨ɺ2hop໨ྡΛݟͯΈΔʁ