Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
01 Introduction
Search
419kfj
October 09, 2023
0
60
01 Introduction
SSJDA計量分析セミナー2023
対応分析/多重対応分析の原理と実際
ポスター 2023夏
https://csrda.iss.u-tokyo.ac.jp/2023summer.pdf
419kfj
October 09, 2023
Tweet
Share
More Decks by 419kfj
See All by 419kfj
R.Q.(リサーチ・クエスチョン)構築という視点から 伝統的検定手法とベイジアン推定を比較する
419kfj
0
23
多重対応分析/構造化データ解析の原理と研究者視点の介在点「文化と不平等」調査データの分析(1)
419kfj
0
38
Methods and Examples of Correspondence Analysis
419kfj
0
83
02 ベクトル行列演算とCAの数理
419kfj
0
75
03 CAの数理その2
419kfj
0
27
04 データの準備
419kfj
0
34
05 CAとMCA事例
419kfj
0
29
06 MCA_01
419kfj
0
30
07 MCAからGDAへ
419kfj
0
61
Featured
See All Featured
Thoughts on Productivity
jonyablonski
68
4.4k
BBQ
matthewcrist
85
9.4k
Bootstrapping a Software Product
garrettdimon
PRO
305
110k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
95
17k
The Power of CSS Pseudo Elements
geoffreycrofte
73
5.4k
A Tale of Four Properties
chriscoyier
157
23k
We Have a Design System, Now What?
morganepeng
51
7.3k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
2
290
How to Ace a Technical Interview
jacobian
276
23k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
28
4.4k
StorybookのUI Testing Handbookを読んだ
zakiyama
27
5.3k
Done Done
chrislema
182
16k
Transcript
対応分析/多重対応分析の 原理と実際 SSJDA計量分析セミナー 2023/09/06 津⽥塾⼤学 数学・計算機科学研究所 藤本⼀男
[email protected]
講習のゴール • ⾃分のコンピュター環境で • Rを使って、対応分析CA、多重対応分析MCAを実⾏し、 • そのリザルトを適切に解釈し、研究活動に活⽤できるようになる。 • 困った時に解決するヒントを⼿にする •
RのPackageの情報を取得できる • Rのfunctionのhelpを参照できる • Rのコミュニティ • CA/MCAのコミュニティ CA/MCAを使えるようになる!
講習の構成 • 午前 • 対応分析CA/MCAを実⾏する道具類の説明をします • R/RStudio、FactoMineR、GDAtools、などなど • 対応分析の基本的な数理 •
ベクトル演算、⾏列演算、の基礎とRでの処理 • 残差⾏列に対する特異値分解(SVD)でCAを⾏う • Rのデータ属性とCA/MCA function • CA/MCAのresultの構成と理解 • 午後 • CAの実際 • MCAの実際 • GDAという分析プロセス • 質疑応答 CA/MCA実⾏の実際の流れとグラフ出⼒をお⾒せします。 今⽇の講習は、「はじまり」だと思ってください。 実⾏できるRmarkdownのスクリプト、データファイルを ⽤意しますので、まずは、それを実⾏。次に、ご⾃⾝のデータ ファイルで実⾏して理解を深めてください。 解説書は、三冊。ご紹介します。
この講習の基礎はこの三冊です
はじめに • 対応分析Correspondence Analysis が処理するデータ • カテゴリカルデータ • 名義尺度、順序尺度のデータを扱う。 •
もともと量的なデータではないものに、数値を付与して(数量 化)、データ間の関係を分析する。 • 2変数(クロス表)を扱う:(シンプル)対応分析(CA) • 3変数以上(個体x変数)を扱う:多重対応分析(MCA) • 数理的な処理の視点からは、どちらの表も2元表 • ⾏変数と列変数(CA) • 個体と変数(MCA)
狭義のCAと広義のCA • 狭義のCA • 「この⼿法は、因⼦分析や多次元尺度構成法のように探索的データ分 析*の技法として⽤いられる」Clausen1989:2015 p8 *EDA • 広義のCA
• ベンゼクリ:「データ解析」と同義になった、という⾔い⽅。 Clausen 1989:2015 p7 • 林知⼰夫による『データの科学』 • 個々の解析⼿法(回帰分析や狭義のCAなど)を含んだ、データ解析 の⽅法論。 • TukeyによるEDA(1962,1977)を内包する。 • 幾何学的データ解析(GDA)は、この⽅法論を指す。
EDAとはなにか 本章ではあらゆるデータサイエンスプロジェ クトで最初に⾏われるデータ探索に焦点を絞 る。探索的データ分析 (Exploratory Data Analysis)は、統計では⽐較的新しい分野だ。 古典的な統計学は、少数の標本から⼤量デー タについての結論を導き出す推定に焦点を絞 っていた。1962年、テューキーは画期的な論
⽂「The Future of Data Analysis」において統計 学の改⾰を訴え、従来の統計的推定が、⼀構 成要素にすぎないデータ解析という新たな科 学分野を提唱した。」Bruce2018 Peter Bruce, Andrew Bruce(訳:⿊川利明),2018,『データサイエンス のための統計学⼊⾨』オライリージャパン
Analyse des Données からGDAへ • 1960年代 JPベンゼクリがAnalyse des Données を提唱。直訳すると、Data
Analysis、つまり「データ解析」 • これに、構造化データ解析(SDA)や帰納的推論(帰納的データ解析 (IDA))を加えて、幾何学的データ解析(GDA)と呼ぶようになっ た。 • GDAの命名は、スタンフォード⼤学のPatrick Suppesによる。原注*1 • 1996年 • ただ、GDAという名称は使⽤されていないものの、内容的には、Lebart, Morinow, Warwick 1977(仏語)/1984(英語)(⽇本語訳は1994に⼤隅らによる 『記述的多変量解析』⽇科技連)で展開されている。 • La Distinction の5章、注2で参照されているのがこれ。 • 林知⼰夫『データの科学』と同じ発想、アプローチ。 2022/2/28 対応分析研究会第11回 ver1.1 8
Benzécri 1969/1973 Rouanet & Le Roux 2004 Lebart, Morinow, Warwick
1977/1984 Tukey 1962/197 7 Efron 1979/1996 Fisher 1940 Hotelling 1933 林知己夫 1956 数量化の方法 1974 調査の科学 1984 データの科学 2001 GDA (GDA) Patrick Suppes による命名 “Geometric Data Analysis” GDA幾何学的データ解析 “Analyse des Données” = “Data Analysis” Bootstrapingなど resampling技法 EDA:探索的データ解析 最適化尺度 PCA主成分分析 1996 津⽥塾⼤学紀要 54号(2022/3) ⽤に作成 2022/2/28 対応分析研究会第11回 ver1.1 9
この講習で使うもの • データ処理のプラットフォーム • R、Rstudio、Rmarkdown • Rの基本package • dplyrを含むtidyverse •
CA/MCAパッケージ • FactoMineR、GDAtools • CA helper package • explorなど • グラフ表⽰ • base graphics、ggplot2 • EDA tools • explore、vcdなど
Rで対応分析/多重対応分析を⾏うのにマ スターすべき領域 1. データを⽤意する • Rのfunctionに読み込める形式に整える 2. CA/MCAのfunctionに投⼊する 3. resultを解釈する
• グラフを表⽰する • 諸統計量を解釈する データを⽤意する CA/MCAを実⾏ resultを解釈する
データ • packageに付属しているサンプル・データ • スクリプト内で作成(⼩規模なものはこれで) • 外部データ(⼤規模なもの) • Excel、CSV •
SSJDA オンライン集計、e-statデータ、Google Formsのoutput • SPSS • SSJDA預託データを申請するとSPSS(.sav) • ISSPのデータ https://issp.org/ • 書籍関連のデータもExcelやSPSSのものもある。 • Le Roux先⽣のサイトなど。 • Rのデータオブジェクトとして保存されたもの(.rda) • 外部データに必要な前処理施したもの、中間段階のものなどを、.rdaとして 保存し、使うときにloadするという使い⽅をします。前処理に時間がかかる 場合。 データを⽤意する
EDAtoolsとして(CA/MCAに関連して) • CA/MCAを実⾏する前に、データの分布を確認する。 • CA/MCAに限らず、単変数での度数分布、2変数での関連表⽰などを して、データの分布を確認するもの。 • EDA(探索的データ解析)に活躍するグラフ表⽰ • vcd
Package(Vidualizing Categorical Data) • mosaic plot、doubledeckerなど。 • mosaicは、拡張帯棒グラフとでも呼べるもの。
CA/MCAのpackage • 今回の講習でつかうもの • 対応分析CA • FactoMineR::CA • 多重対応分析MCA •
FactoMineR::MCA • GDAtools::speMCA • Packageの解説はCRAN(Complihensive R archive Network) • 多くの作者は、GitHub上でサポートしてます • 問題があればissueに書き込みます。 CA/MCAを実⾏
CA/MCAのhelper Package • factoextra • FactoMineRのfunction、CA、MCA、PCAなどのresultをグラフ表⽰。 • https://419kfj.sakura.ne.jp/db/camca- %E3%82%AA%E3%83%96%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88%E3 %81%AE%E3%82%B0%E3%83%A9%E3%83%95%E5%8C%96%E3%83%84%E3%83
%BC%E3%83%AB-factoextra/ • http://www.sthda.com/english/wiki/factoextra-r-package-easy-multivariate- data-analyses-and-elegant-visualization • FactoShiny • FactoMineRのresult⽤につくられたShinyによるツール • explor • 各種CA/MCAfunctionのresultを動的に表⽰するツール(Shiny) • https://juba.github.io/explor/ resultを解釈する
構成:baseとpackageの組合せ R base + Package Package Package Package Package 分析の⽬的によって必要なものをload
して使います。 Rをインストールすると「基本構成」 としておおよそのものがついてき ます。 FactoMineR、GDAtoolsもpackageです
基本操作:コンソールとスクリプト Console + Script コンソールから⼊⼒:結果もコンソール スクリプトから実⾏ 結果はコンソール 繰り返し実⾏できる。 filename.R
Rstudio:IDE(統合開発環境) Integrated Development Environment Console Script File/package/obj ect.. スッピンのR Filename.R、filename.Rmd
★
Rstudioを使うメリット • Project として、ファイル類をまとめて管理できる。 • スッピンRやRcmdrだと、⾃分でフォルダ/ディレクトリを管理する必要あり。 (作業が少し増えてくると⼤混乱します。) • Rmdを使った再現可能処理 •
スクリプトファイルは、コマンド処理の流れは記録されますが、その結果で あるグラフなども⼀本のファイルでまとめて管理できます。 • ある値を変化させてどのように結果が変わるか、ということも管理可能。 • 【ご⽤⼼!】 • 講義でRstudioをつかっていて⼀番多いトラブルは、Projectの指定のミスで す。MS-Officeなどでは意識しなくていい仕組みだからだと思います。ファ イルが読み込めない!という場合、スクリプトをうごかしてる directory/Folder とダウンロードしたファイルのありかがずれています。
Rmarkdownをマスターすると幸せになれ ます。 • markdown書式 • markupの逆? • HTML:Hyper Text Markup
Language • テキストファイル上の簡単な書式でアウトライン/レイアウトなどを表現する • # ⾒出し1 • ## ⾒出し2 • これをR⽤に拡張したもの • Rmarkdown • Rへのコマンドだけでなく、表やグラフなど処理結果を⼀つのファイルとし てまとめることができる。 • 再現可能な処理を記録。 • レポートまで作成 • Rmarkdownの解説はネット上にたくさんあります。 • https://kazutan.github.io/kazutanR/Rmd_intro.html
スクリプトの構成/プログラム書法の基礎 ⼊⼒ 処理 結果 データ 統計処理 処理結果 表、 グラフ、 …
コマンド 引数、オプション スクリプトの内部で作成 外部から読み込み などなど
スクリプトの構成 ⼊⼒ 処理1 結果 処理1 処理1 : : この関係をシンプルに表現するのが パイプ演算⼦%>%
というもの
Rの⾔語的特徴 • ベクトル/⾏列演算が可能 • Σ で関係を表⽰すると • I,j,k…でまわす • プログラム的には、for
⽂で表現(間違いのもと)! • ベクトル/⾏列表現だと、シンプル! • 実例は、本⽂の解説の中でやります。
MEMO