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
82
02 ベクトル行列演算とCAの数理
419kfj
0
75
03 CAの数理その2
419kfj
0
27
04 データの準備
419kfj
0
33
05 CAとMCA事例
419kfj
0
29
06 MCA_01
419kfj
0
30
07 MCAからGDAへ
419kfj
0
61
Featured
See All Featured
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Optimizing for Happiness
mojombo
376
70k
Embracing the Ebb and Flow
colly
84
4.5k
Visualization
eitanlees
146
15k
Fireside Chat
paigeccino
34
3.1k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
32
2.7k
Product Roadmaps are Hard
iamctodd
PRO
49
11k
How STYLIGHT went responsive
nonsquared
95
5.2k
Writing Fast Ruby
sferik
628
61k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
7k
Designing on Purpose - Digital PM Summit 2013
jponch
116
7k
The World Runs on Bad Software
bkeepers
PRO
65
11k
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