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

#経済学のための実践的データ分析 6.1 データを取得するための5から6の方法

#経済学のための実践的データ分析 6.1 データを取得するための5から6の方法

一橋大学 経済学部 28番教室
#経済学のための実践的データ分析 6.1 データを取得するための5から6の方法

yasushihara

June 20, 2019
Tweet

More Decks by yasushihara

Other Decks in Education

Transcript

  1. 今日の内容 (人力や Web スクレイピングや RPA で)データを集めてきて処理をするまでの 長く険しい道 [座学、実習] • データといっても、そのほとんどは実のところ定型化されてい

    ません。Web サイトや書籍や国会図書館から手作業でひとつひ とつ入力し、あるいは、Web スクレイピングやRPA を用いて, Web から取得する必要があります。 • データ分析は、こうした事前の作業が作業全体の60-70パーセ ントを占めています。 • こうした手続きの具体例について、座学を用いて紹介した後、 雑誌や Web に掲載されたデータを取得する手法についてご紹 介します。
  2. 今日までの講義で使ったデータ • ランダム作成した行列データ (@Jupyter Notebook) • FIFA 19 データベース (Kaggle)

    • 落合博満の打率と年俸データ (プロ野球) • 特許データベース (IIP パテントデータベース) → すでにデータが整備されており, あとは解析すれば何かしらの アウトプットが作成できるもの. しかし, 現実にはデータセット は自分で用意する必要がある
  3. データ分析の流れ なんのデータを 使うか考える 先行研究・事例 を探す データの取得方 法を確認する データをデータ ベース or

    手入力 or 図書館 or 口 コミ or Web ア ンケートで入手 する 入手したデータ の妥当性を確認 する データを統計ソ フト and/or Python and/or SQL で処理する データに統計処 理を行う データに関する 解釈を行う 解釈されたデー タと、その解釈 を Word か Jupyter Notebook か Tex でテキス ティングする レポートとして 先生に送る/上司 に提出する/学術 誌に投稿する 今日メインに取り上げる内容 前回/前々回で 取り上げた内容 レポートでやって いただく内容 入手したデータに不足があれば, 別のデータソース を参照し, その入手可能性や妥当性を確認し, データ の入手作業を改めて行う
  4. 1. 図書館や国会図書館で入手する • 一橋大学図書館 • および, 日経BPデータベースなど, 大学が契約しているデータベース • 国会図書館

    as known as日本最強の図書館 • デジタルデータベース • http://dl.ndl.go.jp/ • リサーチ・ナビ • https://rnavi.ndl.go.jp/rnavi/ • なにか信頼性の高いデータが必要になったら, 永田町に行けば だいたい見つかります (税金を払っている甲斐があります)
  5. 2. データの提供元から入手する • データベースを提供する会社から入手する • JSON (グッドデザイン賞) や XML (Web

    of Science) など, その ままだと解析をそのまま行うには複雑過ぎるデータ形式で提供 される場合もあるので, 必要に応じてデータの parse 処理を行 う。 • 具体例; • Web of Science のXML データをparse してSQL にした話
  6. 2. データの提供元から入手する • (a.) Parsing the bibliographic data from XML

    to SQL of WoS - Pick up sufficient data to analyze - Which tag is needed? - Title? - Names Count? (as known as scientific ordering) - Publisher? - Fund information? - Name? First name? Last Name? - ID?
  7. 2. データの提供元から入手する • データを parse して, XML からSQL に変換 する

    • 正規化する • MySQL 上でデータを処 理可能にする
  8. 2. データの提供元から入手する • WoS データのSQL 化の場合 • ecrypt data from

    *.zip to *.gz format • Take 3 mins for 8.16GB • Decrypt data from *.gz to *.zip format • Take 30 mins for 20GB • Decrypt data from *.zip to *.xml format • Take 1.2 hours for 10GB • Parsing xml data into (my)sql format • Take 5.5 hours for 40.5GB • Binding separated *.sql format data into one single file for each year • Take 35 mins • Importing *sql format data into MySQL Server • Take 120 hours for 49.8GB ZIP - > GZ GZ -> ZIP ZIP -> XML XML -> SQL SQL -> SQL Server Accessin g from SQL client Finally you could get the data! Stata?R? Analyze Submissi on Revise Publis h
  9. Parsing XML-based Data to (My)SQL • Using python to parse

    XML data to SQL format. • Using generic_paser.py which distributed in Github. • https://github.com/titipata/wos_pars er • Takes 5.5 hours to parse XML data in 40.5GB into SQL format. • Then import to SQL server, it takes 1.5-3 days with 2 million entries per year.
  10. Creating Database Tables. • Write Down “Create Table” and define

    database structure. CREATE TABLE raw_data.wos_summary ( id varchar(200) NOT NULL, file_number integer NOT NULL, coll_id varchar(200), pubyear varchar(200), season varchar(200), pubmonth varchar(200), pubday varchar(200), coverdate varchar(200), edate varchar(200), vol varchar(200), issue varchar(200), voliss varchar(200), supplement varchar(200), special_issue varchar(200), part_no varchar(200), pubtype varchar(200), medium varchar(200), model varchar(200), indicator varchar(200), inpi varchar(200), is_archive varchar(200), city varchar(200), country varchar(200), has_abstract varchar(200), sortdate varchar(200), title_count varchar(200), name_count varchar(200), doctype_count varchar(200), conference_count varchar(200), language_count varchar(200), normalized_language_count varchar(200), normalized_doctype_count varchar(200), descriptive_ref_count varchar(200), reference_count varchar(200), address_count varchar(200), headings_count varchar(200), subheadings_count varchar(200), subjects_count varchar(200), fund_ack varchar(200), grants_count varchar(200), grants_complete varchar(200), keyword_count varchar(200), abstract_count varchar(200), item_coll_id varchar(200), item_ids varchar(200), item_ids_avail varchar(200), bib_id varchar(200), bib_pagecount varchar(200), bib_pagecount_type varchar(200), reviewed_language_count varchar(200), reviewed_author_count varchar(200), reviewed_year varchar(200), keywords_plus_count varchar(200), book_chapters varchar(200), book_pages varchar(200), book_notes_count varchar(200), chapterlist_count varchar(200), contributor_count varchar(200), PRIMARY KEY(`id`) ); CREATE TABLE raw_data.wos_page ( id varchar(200) NOT NULL, page_id integer NOT NULL, page_value varchar(200), page_begin varchar(200), page_end varchar(200), page_count varchar(200) ); CREATE TABLE raw_data.wos_titles ( id varchar(200) NOT NULL, title_id integer NOT NULL, title varchar(200), title_type varchar(200), lang_id varchar(200), translated varchar(200), non_english varchar(200) ); CREATE TABLE raw_data.wos_summary_names ( id varchar(200) NOT NULL, name_id integer NOT NULL, role varchar(200) NOT NULL, seq_no varchar(200), addr_no_raw varchar(200), reprint varchar(200), lang_id varchar(200), r_id varchar(200), r_id_tr varchar(200), orcid_id varchar(200), orcid_id_tr varchar(200), dais_id varchar(200), display varchar(200), display_name varchar(200), full_name varchar(200), wos_standard varchar(200), prefix varchar(200), first_name varchar(200), middle_name varchar(200), initials varchar(200), last_name varchar(200), suffix varchar(200) );
  11. 3. API で取得する • Application Programming Interface • アプリケーション同士を接合するための仕組み •

    汎用的な機能を提供する. • API を経由して機能を呼び出す形でプログラムを構成することにより, 同 じAPI が実装されていれば, 別のソフトウェア上でそのまま動作できる. • データ形式にXML や JSON を利用する Web API も普及 http://e-words.jp/w/API.html
  12. 3. API で取得する • Crossref (学術論文の DOI 情報サイト) から, 原講師の出版物の情報を

    取得する • DOI; コンテンツのディジ タルオブジェクト識別子. インターネット上のド キュメントに恒久的に与 えられる. • URLを指定し, 取得する DOI を設定する
  13. 3. API で取得する • Orcid から特定の研究者の情 報をAPI 経由で取得する • 今回は

    ORCID ID 0000-0001- 9500-1150 • Orcid Public API の Client ID や Cilient secret, token を取 得し, API 経由で 原講師の最 近の論文情報を取得する
  14. 3. API で接続する • 参考文献 • https://github.com/ORCID/python-orcid • https://support.orcid.org/hc/en-us/articles/360006897174 •

    https://members.orcid.org/api/about-public-api • https://members.orcid.org/api/tutorial/read-orcid-records
  15. 4. Web アンケートで集める • アンケートを Google Docs などを使って, 集める •

    卒論やMBA ペーパーでも見 かけがち • 母集団がとても曖昧になりが ち • 注.まどかマギカネタは古典
  16. 4. Web アンケートでデータを集める • 懸念点1. データの母集団が, データの収集者の想定とは異 なる可能性がある • ユースケース:

    「女性の大学生 の買うコスメの情報を集める」, 「起業への選好を調査する」 調査者が想定している母集団= ◦◦大学の女性の大学1-4年生
  17. 4. Web アンケートでデータを集める • 懸念点1. データの母集団が, データの収集者の想定とは異 なる可能性がある • アンケートのTOPページに「こ

    のアンケートは女性の大学生限 定です」と書いても, 回答者が それを守る保証はどこにもない • 記名の場合も, アンケートサイ トにBASIC なパスワードを掛 ける場合にも同様 実際のデータ集計結果= ◦◦大学の女性の大学1-4年生+α
  18. 4. Web アンケートでデータを集める • 懸念点2. アンケート調査の段階で適切な質問票を設計出来ていな いと、分析にあたって必要な情報を入手できない可能性がある • 質問表の設計に不備があると, 質問者が欲しい結果に回答者を誘導してし

    まう可能性 • 足りないデータをあとからアンケート調査しても, 調査時期が異なるので 統計的に正しい解析とは言えなくなる • 質問表の設計手法の参考文献 • 『質問紙デザインの技法[第2版]』 • 『図解 アンケート調査と統計解析がわかる本[新版]』
  19. • 「国立のおいしいも のアンケート」の ツッコミポイント 1. Q1. の解答欄が複数 選択可能である 2. Q1.

    の選択肢の単位 が絶妙に違う (“ザイ カレー”と”すた丼” と”つり舟”) 3. Q2. および Q3. は必 須回答であるか否か 明記されていない 4. 誰が対象のアンケー トか明記されていな い。 あとは?
  20. 5. Web スクレイピングする, RPA で処理 する • Web スクレイピング •

    Python etc… でコーディングすることで, Web ページ上から必要な情 報を取ってくる • よくある例; Yahoo! ニュースやYahoo! ファイナンス, データを集約し ているサイトからデータを取得し, 例えば口コミ解析や時系列分析に利 用する • よく考えてみると • 株価データなどは, 実は大学図書館から「オフィシャルに」ダウンロードしてこ れる例が多い • 経済学部の卒論/修論では実はあんまり出番がない(こともないかもしれない)
  21. 5. Web スクレイピングする, RPA で処理 する • その1; Web スクレイピン

    グの事例; 阪大Web サイト (http://stips.jp/) のタイト ルを取得する • 右図の◦の部分を取ってく る https://qiita.com/Azunyan1111/items/9b3d16428d2bcc7c9406
  22. 5. Web スクレイピングする • その2; Panda の機能を用いて Web サイト上の表を取得する #女性アイドルのキャパ数

    url = ‘https://wasteofpops.hatenablog.com/entry/2019/05/01/000000' dfs3 = pd.read_html(url) print(dfs3) URLを指定する Web ページ上のテーブルを取得する
  23. ★山本彩 乃木坂46 sherbet ★渡辺美優紀 ★高橋みなみ BABYMETAL 仮面女子 ★日向坂46 Perfume でんぱ組.inc

    真野恵里菜 モーニング娘。 AKB48(グループ) 篠崎愛 私立恵比寿中学 鈴木愛理 BiSH ★有安杏果 ももいろクローバーZ 欅坂46 吉田凜音 椎名ぴかりん アンジュルム フェアリーズ Juice=Juice 夢みるアドレセンス カントリー・ガールズ 小池美由 TEAM SHACHI(A.K.A.チームしゃちほこ) スリジエ ★=LOVE i☆Ris 柊木りお BiS【新】 こぶしファクトリー バンドじゃないもん!MAXX NAKAYOSHI たこやきレインボー つばきファクトリー 風男塾 寺嶋由芙 東京女子流 ゆるめるモ! LADYBABY ▲(活動停止)9nine ベッド・イン まねきケチャ さくら学院 ラストアイドル(ファミリー) PassCode GANG PARADE (活動停止)ベイビーレイズJAPAN ときめき宣伝部 (活動停止)PASSPO☆ KissBee ばってん少女隊 武藤彩未 EMPiRE ぜんぶ君のせいだ。 虹のコンキスタドール 眉村ちあき ▲(活動停止)妄想キャリブレーション Negicco 2o Love to Sweet Bullet ▲(活動停止)THE HOOPERS CY8ER 吉川友 神宿 わーすた Q'ulle SUPER☆GiRLS 純情のアフィリア アップアップガールズ(仮) predia Maison book girl A応P BILLIE IDLE アイドル教室 sora tob sakana マジカル・パンチライン ▲(活動停止)つりビット アキシブproject notall (活動停止)Cheeky Parade Dorothy Little Happy 東京パフォーマンスドール LinQ Task have Funフィロソフィーのダンス PINK CRES. ★J☆Dee'Z lyrical school Party Rockets GT ▲(活動停止)ロッカジャポニカ じゅじゅ 演歌女子ルピナス組 FES☆TIVE あゆみくりかまき Dancing Dolls 天晴れ!原宿 さんみゅ~ アンダービースティー 劇場版ゴキゲン帝国 hy4_4yh (活動停止)バニラビーンズ 神使轟く、激情の如く。 里咲りさ Run Girls, Run! 伊藤桃 ★なんきんペッパー ▲(活動停止)X21 絶叫する60度 kolme(A.K.A.callme) OS☆U RHYMEBERRY なんキニ! Bitter & Sweet uijin 転校少女*(A.K.A.転校少女歌撃団) ヤなことそっとミュート Luce Twinkle Wink☆ CHERRSEE おやすみホログラム ナナランド ミライスカート ONEPIXCEL 絶対直球女子!プレイボールズ ひめキュンフルーツ缶 放課後プリンセス はちみつロケット Pimm's CROWN POP RYUTist ゆくえしれずつれづれ ハコイリムスメ Aphrodite 大阪☆春夏秋冬 煌めき☆アンフォレント 愛乙女☆DOLL (活動停止)チャオ ベッラ チンクエッティ ANNA☆S アイドルカレッジ monogatari(A.K.A.原宿物語) 病ンドル (活動停止)ベボガ! 柳田絵美花 パクスプエラ 上月せれな MIGMA SHELTER (活動停止)Cupitron せのしすたぁ DESURABBITS いちごみるく色に染まりたい。 STARMARIE ▲(活動停止)ハッピーくるくる NEO JAPONISM Kus Kus Chu-Z バクステ外神田一丁目 READY TO KISS 真っ白なキャンバス ▲(活動停止)THERE THERE THERES Devil ANTHEM. さくらシンデレラ NECRONOMIDOL 3776 ワンダーウィード Ange☆Reve WHY@DOLL Chu☆Oh!Dolly みんなのこどもちゃん クマリデパート ▲(活動停止)Chubbiness ▲(活動停止)S☆スパイシー ▲(活動休止)東京CLEAR'S Broken By The Scream ▲(活動停止)CHOCO★MILQ キセキレイ Fullfull Pocket SIR 幽世テロルArchitect はちきんガールズ amiinA SAY-LA フルーレット イケてるハーツ (活動停止)少女隊 平成琴姫 川崎純情小町 TEARS-ティアーズ- Yamakatsu(A.K.A.山口活性学園) tipToe. ▲(活動停止)・・・・・・・・・(活動停止)KNU KOTO ぴゅあ娘 リローデッド Jewel☆Neige ミルクス本物 ピュアリーモンスター 桃色革命 パンダみっく avandoned(A.K.A.あヴぁんだんど) サクヤコノハナ CYNHN ヲルタナティヴエルフロート はっぴっぴ ステーション♪ あかぎ団 キャンディzoo (活動停止)MAPLEZ 愛夢GLTOKYO DEAR KISS まじばんch(A.K.A.Magical Ban☆Bang) (活動停止)ハニーゴーラン とちおとめ25 TAKENOKO▲ エレクトリックリボン ★つぼみ大革命 ★星歴13夜 ▲(活動停止)さきどり発進局 あっとせぶんてぃーん (活動停止)アモレカリーナ東京 全力少女R P.IDL DREAMING MONSTER HAMIDASYSTEM Star☆T Tokyo Rockets Stella☆Beats KOBerrieS アイドル諜報機関LEVEL7 SPARK SPEAKER 青SHUN学園 81moment (活動停止)リナチックステイト まなみのりさ エラバレシ CoverGirls (活動停止)フラップガールズスクール シンセカイセン 蜂蜜★皇帝 TOY SMILEY (活動停止)PREDIANNA Nゼロ SO.ON project グーグールル 赤マルダッシュ☆ FLOWLIGHT 東京CuteCute HIGHSPIRITS PiXMiX ▲(活動停止)きみがわたしだけのおうじ さまだったら (活動停止)HR きゃわふるTORNADO ★三代目 KONAMON シブヤDOMINION i*chip_memory Malcolm Mask McLaren ROSARIO+CROSS d-girls (活動停止)DISDOL PLC (活動停止)WenDee (活動停止)PrincessGarden-姫庭- RY'S(A.K.A.アイドルオーケストラRY'S) AH(嗚呼) 閃光プラネタゲート ヤンチャン学園音楽部 きゅい~ん'ズ 手羽先センセーション DDプリンセス eyes われらがプワプワプーワプワ ▲(活動停止)恥じらいレスキューJPN ▲(活動停止)JK21 (活動停止)ダイヤモンドルフィー (活動停止)Sola Sound (活動停止)on and Go! ★HIROSHIMA GO!GO! ★Jewel☆Ciel ▲(活動停止)ユメオイ少女 Needs 少女交響曲~GirlsSymphony~ IVOLVE Q-pitch カラフルスクリーム 校庭カメラガールドライ ▲(活動停止)月と太陽 ★MONSTER GIRLFRIEND ★綺星★フィオレナード Splash! ワガママきいて?? QUEENS expiece (活動停止)WiLL ★143∞ ★ティーンズ☆ヘブン (活動停止)東京イルミナティ NEO BREAK HAPPY ANNIVERSARY ULTRA BUZZ ▲(活動停止)Dear L mana パステル☆ジョーカー 東京23区ガールズ (活動停止)カプ式会社ハイパーモチベー ション 狂い咲けセンターロード (活動停止)アリスインアリス ZOMBIE POWDER ▲(活動停止)なめんなよ原宿 G-COMPLEx ▲(活動停止)渡良瀬橋43 CANDY GO!GO! Shine Fine Movement gra-DOLL (活動停止)ULTRA FRUITPOCHETTE ★Fragrant Drive 女子独身倶楽部 100 1000 10000 100000 1000000 10000000 100 1000 10000 100000 1000000 10000000
  24. import seaborn as sns import matplotlib.pyplot as plt import pandas

    as pd %matplotlib inline df_iris=input_sheet_df #print(df_iris) ax = sns.lmplot('Followers', # Horizontal axis 'CD_SALES', # Vertical axis data=df_iris, # Data source fit_reg=False, # Don't fix a regression line size = 10, aspect =2 ) # size and dimension plt.title('CD Sales and Followers') # Set x-axis label plt.xlabel('Followers') # Set y-axis label plt.ylabel('CD Sales') def label_point(x, y, val, ax): a = pd.concat({'x': x, 'y': y, 'val': val}, axis=1) for i, point in a.iterrows(): ax.text(point['x']+.02, point['y'], str(point['val'])) label_point(df_iris.CD_SALES, df_iris.Followers, df_iris.IDOL_NAME, plt.gca()) https://codeday.me/jp/qa/20190326/481623.html
  25. 5. Web スクレイピングする • その3. 食べログの レビュー情報を取 得して, 東京の ラーメン店/フレ

    ンチレストランな ランキングを作成 する 引用; https://qiita.com/toshiyuki_tsutsui/items/f143946944a428ed105b?fbclid=IwAR1xYwmpS0xGbmbyAz7SVlETwhyguMFEYsgdg- Niap27Mj3XurUHjJoG-Bk
  26. 5. Web スクレイピングする • 引数として, self, list_url, mode を指定 する

    • requests.get で当該URL からデータが 取得できるか確認する • BeautifulSoup を用い, html の parse を行う. • soup_a_list で店名のリストを一括して 取得する • A タグの list-rst__rst-name-target 部 分からデータを取得する
  27. 5. Web スクレイピングする 3.65 3.7 3.75 3.8 3.85 3.9 3.95

    4 4.05 4.1 4.15 中華そば しば田 麺尊 RAGE 饗 くろ喜 ラーメン屋 トイ・ボックス ほっこり中華そば もつけ らーめん改 中華ソバ 伊吹 八雲 真鯛らーめん 麺魚 本店 Japanese Soba Noodles 蔦 麺 みつヰ 純手打ち だるま らぁ麺やまぐち 麺屋吉左右 中華そば屋 伊藤 中華蕎麦 蘭鋳 中華蕎麦にし乃 MENSHO 迂直 煮干鰮らーめん 圓 はつね 中華そば 満鶏軒 町田汁場 しおらーめん進化 町田駅前店 麺処 びぎ屋 らぁ麺やまぐち 辣式
  28. 5. Web スクレイピングする • Web スクレイピングの注意 • データをダウンロードするとき • 目的は下記のものに限る。

    • * 個人や家族間で使用する * Web検索サービスを提供する * 情報解析をする ※参考:著作権法第30条・著作権法第 47条(6,7) • 対象コンテンツは下記のものに限る。 • * 文章(データベースのコンテンツの場 合はコンテンツの一部のみに留めてお く) * 画像(同上) * 音声(パブリックドメイン等のオープ ンなライセンスの物に限る) * 映像(同上) ※参考:著作権法第30条・著作権法第 47条(7) • Webサイトへアクセスする時は下記 の制限を守る。 • * robots.txt/robotsメタタグのアクセ ス制限内容を守る。 * robots.txtがない場合でも、サーバ アクセスの間隔を1秒以上空けるように する。 * Pragma:No-cacheメタタグが設定 されているページはダウンロードしな い。 * rel=”nofollow”が設定されているリ ンクはクローラーで辿らない。 * 会員のみが閲覧できるページの場合 は利用規約を守る。 * 情報収集を禁止する措置(ex.アク セス制限)がクローリング時に取られ ていた場合は、既に取得していた情報 を含めて削除する。 ※参考:著作権法第47条(6) https://qiita.com/nezuq/items/c5e827e1827e7cb29011
  29. 5-2. RPA で処理する • RPA(Robotics Process Automation; ロボティクスプロセス オートメーション)とは、現代のホワイトカラーの主要業務であ る定型的パソコン作業の効率化を図る、ルールエンジンを活用

    したソフトウェアロボットである。作業時間を圧倒的に短縮す ることができ、作業ミス無しで連続稼働が可能であるため、オ ペレーションプロセスの限界費用を低下させることができる。 • RPAはソフトウェアロボットの特徴を最大限に発揮するもので、 具体的には、定型化された表計算ソフト間のデータのやりとり、 メールのやりとり、ウェブ情報のリアルタイム収集や確認作業、 そして、それら各作業間の連携などを、プログラミングする必 要もなくマクロを作成し実行することができる. http://www.jsse.jp/~kenkyu/201631/04/20163104_115-118.pdf
  30. 5-2. RPA で処理する • “人力で1件約5分かかっていた作業が、ロボットなら1分30秒で 処理できる • 2017年12月にBizRobo!を導入し、データ管理チームの江川氏と田坂氏 の2名の担当者が1カ月間の研修を受けた後、ロボット開発を進めて いった。まず、Web経由で申し込みのあった顧客情報をSalesforceに

    登録する「顧客登録」と、セミナーへ申し込みのあった顧客情報を同 じくSalesforceにセミナー参加者情報として登録する「参加登録」を RPA化した。その導入効果は目を見張るものがあった。 • 「顧客登録は従来、人力で1件当たり約5分かかっていましたが、ロ ボットなら1分30秒で処理できるようになりました。今では全件数の うち約60%をロボットが処理しています。参加登録は人力で1件当た り約3分かかっていたものが、ロボットなら約30秒で処理でき、全体 の99%以上をロボットが担っています」(江川氏)” ソース; https://rpa-technologies.com/case/case011/
  31. 今回作るデータセット • dancyu 3月号 • 日本酒の酒蔵に関するアンケート調 査の Raw Data が掲載

    • きっかけ; 入山章栄さん (早稲田 ビジネススクール教授; aka 妻の 指導教官) のフェイスブック投稿
  32. データの中身 • 代表銘柄 • お酒の名前 • 酒造名 • 会社名 •

    所在地 • 都道府県名 • 郡名+市町村名 • 創業年 • 元号年 • 西暦年 • 石高 • 一石=一升瓶100本 • 蔵元の名前 • 年齢 • 杜氏または製造責任者 • 年齢 • 造りに関わる人数 • 蔵の考えるスタンダード商品 • 具体的な種類
  33. データの中身(cont.) • 杜氏 • “日本酒の醸造工程を行う職人集団、すなわち蔵人 の監督者であり、なおかつ酒蔵の最高製造責任者 をいう” • 杜氏になるには、飯焚(かしき /

    ままたき / めし たき)から始め、全工程に習熟するまで数十年を 要したが、その仕事の内容にふさわしい敬意を払 われ、収入面でも恵まれ、「杜氏になれば御殿が 建つ」などと言われたものだから、戦前の貧しい 農漁村では青少年たちは競って杜氏を志した。手 がけた酒の評判が高まれば、どんどん恵まれた環 境への引き抜きがあるが、失敗すれば翌年の契約 はされないという厳しい実力主義の世界であった。 ちょうど現代のベンチャー起業家のような側面を 持っていたといえる。 • 日本酒の長期的な消費低迷により、杜氏の数も劇 的に減少したが、1980年代以降、若者であらため て日本酒文化を見直し杜氏になろうとする人が増 えてきている。また流派ごとに専門学校や訓練所 を創設したり、石川県菊姫合資会社による酒マイ スター制度のように、蔵単位で後継者の育成に励 んでいるところもある。 • 蔵元 • “酒・醤油・味噌・酢などの醸造元をいい、オー ナー家を指す総称” • 蔵元の主業は蔵物の委託販売である。蔵元は初め 諸藩の米穀を引受け、これを取り扱う蔵役人の称 呼で、藩吏がこれに当たっていたが彼等の無能な ことから、寛文年間(1661年-1673年)の頃より 蔵元の職を藩邸に出入りする町人に委ね、別に留 守居役を定詰または年番として蔵元および掛屋を 監督させた。 • 江戸時代初期は、各藩から派遣された武士の蔵元 が多かったが、寛永年間(1624年-1644年)以降、 しだいに町人蔵元が主流となり、寛文年間以降、 一般的なものとなった。初期の町人蔵元は、大名 や旗本など諸領主が主要都市の大阪・大津・堺な どに置いた年貢米の販売業者であった。 Source: https://ja.wikipedia.org/wiki/%E8% 94%B5%E5%85%83 Source: https://ja.wikipedia.org/wiki/ %E6%9D%9C%E6%B0%8F
  34. データの中身 • 杜氏 • “酒造りの最高責任者である杜氏は、蔵内の 管理はもちろん、原料の扱いから、酒しぼ り、貯蔵、熟成まで、全ての工程に目を 配っています。杜氏のもとで酒造りに携わ る蔵人は10名ほどで、作業別に役職が決め られています。杜氏の補佐役となる頭(か

    しら)は、実際の作業の指揮をとり、人員 の配置を担当します。麹造りの責任者は代 師(だいし)、酒母製造工程の責任者は、 もと廻り、もと屋と呼ばれます。この杜 氏・頭・代師、あるいは頭・代師・もと廻 りの3人を三役と呼んでいます。 • 三役以下の役人(やくびと)としては、米 を洗ってから蒸すまでの作業を担当する釜 屋(かまや)、出来上がったモロミをしぼ る係を船頭(せんどう)、炊事の担当者は 広敷番、飯屋(ままや)と呼ばれます。酒 蔵に入りたての蔵人は炊事の仕事などから はじめ、厳しい作業に耐えながら仕事を一 つひとつ覚えていったのです。” http://www.gekkeikan.co.jp/enjoy/sake/industry/industry03.html
  35. 分析出来そうなこと • このデータのみで出来そうな こと • 石高の分布 • 地域ごとの生産量の累計 • 都道府県ごとの特性の解析

    • 酒造ごとの特性 (テキスト分析) • ひとりあたりの生産量 • 蔵元と杜氏の関係性 • 親子関係や兄弟関係の有無 (Family Firm か否か) • 年齢の差分 • このデータと他のデータを組 み合わせることで出来そうな こと • 杜氏の特性が石高に与える影響 • 杜氏組合 • 地域特性が酒造りに与える影響 • RESAS • 他の産業との関係性の分析
  36. データベース化の手法 • Web スクレイピング • 紙/雑誌ベースなので難しい • RPA • 紙/雑誌ベースなので難しい

    • OCR • もしかしたら出来るかもしれない • 手入力 • 出来ればやりたくないけど、確実
  37. いつでも探しているよ、どっかに dancyu の姿を • 3/31 の日本帰国後, 以下の本屋で探してみる • 愛知 •

    国立 • 吉祥寺 • 羽田 • みつからない • たぶん、dancyu のバックナンバーが売っている本屋ではない と見つからない
  38. みんなでデータ入力を (20分) • https://docs.google.com/spreadsheets/d/1BkgknWKHeQqW nqCs1uaca7ZFvoBF8x44MWr2EuCclnQ/edit?fbclid=IwAR1q6 UynBqICJxbcHaOJ7Cj7RfN_KNGkyK1G3xDfwGb9ThRxwcIZc MKHXT4 にアクセスしてください (一橋IDを利用してログインしてくださ い)

    • 紙に記載された, 以下の情報を入力しましょう • 代表銘柄, 酒造名, 所在地, モットー, 創業年, 石高, 蔵元の名前, 杜氏, 造 りに関わる人数, 蔵の考えるスタンダード商品
  39. 担当の割り振り スクリーン 岩手, 秋田, 宮城, 福島, 茨城, 栃木担当 (5-6人) 群馬,千葉東京,

    神奈川, 長野, 新潟担当 (5-6人) 富山, 石川, 福井, 静岡, 愛知, 岐阜,三重担当 (5-6人) 滋賀, 京都, 大阪, 兵庫, 奈良, 和歌山担当 (5-6人) 岡山, 広島, 鳥取, 島根, 山口担当 (5-6人) 徳島, 香川, 愛媛, 高知, 福岡, 佐賀, 長 崎, 熊本, 大分担当 (5-6人)
  40. いざ入力すると気づくこと • 例外的な表記が, 定型なデータになっているはずなのに, とても たくさんある • 長い社訓の表記 • 抜けている情報をどう表記するか

    • 「主な商品」のカッコ内をどう処理するか • 名前の姓と名の間の空白は全角にすべきか、半角にすべきか • 難しい名前をどう処理するか • 元号はデータとして起こしたほうがよいか? • 打ち込んだデータが正しく入力されているかのダブルチェック が必要
  41. データベース設計の重要性 • データをどういった形式で, どう分割して保存するか • SQL の場合; データの形式を細かく指定 (前回講義参照) •

    文字起こしの場合も, スクレイピングやRPA でデータを取得す る場合も, • 1. 元データからどのデータを取得するか • 2. 取得する場合, どういった形式でデータを取得するか • 3. 例外的なデータ/データが入力されていない場合, どう処理するか それぞれ検討する必要がある
  42. dancyu データセットと組み合わせられる データセット • a.) 杜氏連合データ • 下野杜氏会 • 長野県醸友会

    • 新潟酒造技術研究会 • 丹波杜氏組合 • 但馬杜氏組合 • 南但杜氏組合 • 大和杜氏会 • 南部杜氏協会 • 会津杜氏組合 • 山内杜氏組合 • 能登杜氏組合 • 富山県杜氏会 • 広島杜氏組合 • 大津杜氏組合 • 備中杜氏組合 • 出雲杜氏組合 • 石見杜氏組合 • 高知県杜氏組合 • 九州酒造杜氏組合 • b.) 杜氏の叙勲褒章者リスト • https://nittoren.com/pdf/02_01_190215.pdf
  43. Dancyu データセットと組み合わせられ るデータセット (cont.) • c-2.) 蔵元紀行 • https://www.kuramotokai.com /kikou/

    • 蔵主紹介や歴史背景などのテキ ストデータを, Dancyu データ セットと接合して, 企業の特性 を解析可能
  44. Dancyu データセットと組み合わせられ るデータセット (cont.) • d.) RESAS • 地域経済分析システム •

    https://resas.go.jp/#/13/1310 1 • データのダウンロードが可能 • 利用方法は後の講義で解説予定
  45. Dancyu データセットと組み合わせられ るデータセット (cont.) • e.) 特許データベース • 酒蔵の研究開発が石高や売上に影響を与えているか •

    f.) 企業データベース (DBJ やTDB データベースなど) • 倒産した酒蔵との比較 (サバイバル分析; TDB データベース) • 酒蔵の売上や資本回転率, ROA やROI など
  46. 成績評価(1) • 平常レポート (40パーセント; 必須) • 講義計画に示したように、複数の回で学生にはレポートを課します。 レポートは Word/PowerPoint形式のメールあるいは, github

    経由で の提出が求められます(どの方法を採用するかは、初回の講義で決定し ます)。 • レポートには、(A.) 利用したデータセットとその内容, (B.) 分析の問 い, (C.) 分析手法, (D.) 分析結果 を明記する必要があります。ページ 数や文字数は問いませんが, これらの内容が含まれており, 講義中にア ナウンスする評価手法を満たす場合, 高い得点を得ることが出来ます。 • 平常点 (10パーセント) • 本講義は実習が多く含まれており, また取り扱うデータセットや内容も 多彩です。そのため、受講者同士が協力する必要があります。こうし た受講者の態度を評価するために、平常点を設けます。
  47. 成績評価(2) • 最終レポート (40パーセント; 必須) • 講義の最終回では最終レポートの報告会を行います。受講者は3名から4名か ら構成されるグループで、最終レポートの報告を行う必要があります(人数は 受講者の人数により変更される可能性があります)。最終レポートでは、プレ ゼンテーションの方法を学生は自由に選ぶことが出来ます。PowerPoint

    以 外にも、Prezi などのアクティブプレゼンテーションツールや、他のプレゼ ンテーション手法を用いることが出来ます(プレゼンテーションツールについ ては、必要であれば講義内で説明する機会を設けます)。最終レポートでは、 以下の点について評価を行います。 (A.) グループ内の役割分担 (B.) データセットのユニークさおよび、それが適切に処理されているか (C.) 分析手法のユニークさおよび、それが適切に解析されているか (D.) プレゼンテーションのユニークさ (E.) 質疑応答にうまくリプライすることが出来ているか • 最終レポートの360°グループ評価 (10パーセント) • 3. の最終レポートについて、グループの自己評価および他のグループからの 評価を行います。3. で挙げた評価ポイントに基づき、グループメンバーおよ び他のグループは評価を行います。
  48. 次回: データベースを用いた分析(2) 論文 データベース [座学、実習] • Clarivate Analytics 社が提供する Web

    of Science (https://clarivate.com/products/web-of-science/) では、 論文の書誌情報を取得することが出来ます。 • こうしたデータを用いることで、例えば、「日本の大学で最も 年ごとの論文数が多いのは何処か?」、「(指導教官の)◦◦先 生が書いた論文はt年にx本で、その論文は累計 y 回引用され た」などの情報を取得することが出来ます。 • 前回と同様、学生は問いを立てた上で、データベースから必要 な情報を取得し解析を行い、レポートに取りまとめる必要があ ります。