$30 off During Our Annual Pro Sale. View Details »

R言語入門 (R-4.2.2 2022年11月版) / introduction to r

Uryu Shinya
November 10, 2022

R言語入門 (R-4.2.2 2022年11月版) / introduction to r

統計解析とグラフィックスのための言語・環境である「R言語」の概要、インストール方法、初歩的な使い方を広く・浅く解説した資料です。

2022年11月時点でのRの最新バージョンR-4.2.2を対象としています。

スライド中で実行するRスクリプトを置いているGitHubリポジトリ: https://github.com/uribo/cue2022aw_r104
ウェブブラウザ上でRを動かす環境: https://mybinder.org/v2/gh/uribo/cue2022aw_r104/main?urlpath=rstudio

Uryu Shinya

November 10, 2022
Tweet

More Decks by Uryu Shinya

Other Decks in Programming

Transcript

  1. ӝੜਅ໵ 3ݴޠೖ໳ IUUQTHJUIVCDPNVSJCPDVFBX@S !V@SJCP 3 ೥݄൛

  2. ஫ҙॻ͖ ͜ͷࢿྉ͸3ݴޠͷ֓ཁ͔Βɺ3ͷॳาతͳ࢖͍ํΛ޿͘ɾઙ͘঺հ͢ΔࢿྉͰ͢ɻ ۩ମతͳ಺༰͸ɺ࣍ͷ௨ΓͰ͢ɻ 3ͱ౷߹։ൃ؀ڥͰ͋Δ34UVEJPͷΠϯετʔϧखॱͷղઆ 34UVEJPͷجຊૢ࡞ 3ͷجຊతͳ࢖͍ํʢϕΫτϧɺϦετɺσʔλϑϨʔϜɺࢀরํ๏ʣ ؔ਺ͱҾ਺ 3ͷػೳΛ֦ு͢Δύοέʔδʹ͍ͭͯͷઆ໌ දܗࣜͷσʔλͷಡΈࠐΈ σʔλՄࢹԽ

    UJEZWFSTFύοέʔδͷΠϯετʔϧΛߦ͍·͕͢ɺEQMZS΍UJEZSΛ࢖ͬͨσʔλૢ࡞ɺ MVCSJEBUF΍TUSJOHSʹΑΔσʔλՃ޻͸ѻ͍·ͤΜɻ
  3. 3ݴޠͷ֓ཁ ౷ܭղੳͱάϥϑΟοΫεͷͨΊͷݴޠɾ؀ڥ ϚϧνϓϥοτϑΥʔϜɺΦʔϓϯιʔεɾϑϦʔιϑτ΢ΣΞ ύοέʔδͱݺ͹ΕΔػೳ֦ுʹΑΓɺϢʔβʔ͕ٻΊΔػೳΛ௥ՃͰ͖Δ ౷ܭֶͷΈͳΒͣɺػցֶश΍ΞϓϦέʔγϣϯ։ൃͷͨΊͷύοέʔδ΋๛෋ ݚڀऀ͚ͩͰͳ͘ɺاۀͰ΋޿͘ར༻͞ΕΔ 1ZUIPOɺ+VMJBͱฒͼσʔλαΠΤϯςΟετͷதͰਓؾ σʔλૢ࡞͔Β෼ੳɺՄࢹԽɺϨϙʔτ࡞੒·ͰΛҰ؏ͯ͠ߦ͏ ύοέʔδͷίϨΫγϣϯ͕੔උ͞Ε͍ͯΔʢUJEZWFSTFʣ ଟ਺ͷίϛϡχςΟ͕ଘࡏ͠ɺ׆ൃͳ׆ಈ͕ߦΘΕ͍ͯΔ

  4. 3ݴޠͷྺ࢙     34UVEJPͷϦϦʔε χϡʔδʔϥϯυͷΦʔΫϥϯυେֶʹۈΊΔ 3PCFSU(FOUMFNBOͱ3PTT*IBLB͕։ൃʹணख Φʔϓϯιʔειϑτ΢ΣΞͱͯ͠ެ։ 

    $3"/ͷ૑ઃ ୭Ͱ΋ࣗ༝ʹར༻Մೳ ։ൃʹ΋ࢀՃͰ͖Δ ύοέʔδͷ؅ཧͱ഑෍ 3ͷϦϦʔε ؔ਺ܕݴޠ4DIFNF ౷ܭॲཧݴޠ4 ͷӨڹΛड͚Δ   $3"/ʹొ࿥͞Εͨύοέʔδ਺   5PLZP3ൃ଍ɺ+BQBO3!౷ܭ਺ཧݚڀॴͷ։࠵ ࠃ಺Ͱͷ3ίϛϡχςΟ5TVLVCB3ൃ଍ ʮσʔλαΠΤϯςΟετʯϒʔϜ ࠃ಺ͷ஍ํ3ίϛϡχςΟͷॆ࣮ ࡳຈɺઋ୆ɺԣ඿ɺ໊ݹ԰ɺେࡕɺ޿ౡɺ෱ԬFUD 5PLVTIJNB3ͷ։࠵ ࣌఺
  5. $3"/ 5IF$PNQSFIFOTJWF3"SDIJWF/FUXPSL 3ຊମͷ഑෍ͳΒͼʹύοέʔδͷొ࿥ɾ؅ཧΛߦ͏ ੈքதʹϛϥʔαΠτ͕ଘࡏ ύοέʔδͷΠϯετʔϧݩͱͳΔ63-ΛϛϥʔαΠτ͔Βࢦఆ͢Δ Ϋϥ΢υIUUQTDMPVESQSPKFDUPSH·ͨ͸ ࠃ಺ͷΧॴʢ౷ܭ਺ཧݚڀॴͱࢁܗେֶʣͷ͍ͣΕ͔͕͓͢͢Ί γʔϥϯɺΫϥϯ

  6. 3ͱ34UVEJPͷಋೖ ˞͜ͷߨ࠲Ͱ͸3ͱ34UVEJP Λར༻

  7. 3ͷΠϯετʔϧʙ8JOEPXTฤʙ ೚ҙͷ΢Σϒϒϥ΢βʢ$ISPNFɺ4BGBSJɺ&EHFͳͲʣͰ$3"/ʢIUUQTDSBOSQSPKFDUPSHʣ΁ΞΫηε %PXOMPBE3GPS8JOEPXTΛΫϦοΫ 3XJOFYF͕Πϯετʔϧ͞ΕΔͷͰɺμ΢ϯϩʔυͨ͠ϑΝΠϧΛ։͘ ΤΫεϓϩʔϥʔ͔Βʜ1$μ΢ϯϩʔυ Πϯετʔϧதʹར༻͢Δݴޠʜʮ೔ຊޠʯΛબ୒ Πϯετʔϧઌʜ$=1SPHSBN'JMFT=3=3 ίϯϙʔωϯτͷબ୒ʜʮར༻ऀ޲͚Πϯετʔϧʯͷ·· ىಈ࣌Φϓγϣϯʜʮ͍͍͑ʢσϑΥϧτͷ··ʣʯ 3XJOFYFΛΫϦοΫ

    ⁞   ⁠ ͜ͷΑ͏ͳը໘͕දࣔ͞ΕͨΒʮ͸͍ʯΛબ୒ جຊతʹ͸Կ΋มߋͤͣʹʮ࣍΁ʯΛΫϦοΫ͍͚ͯͩ͘͠ ⁡ ಛผʹ೚ҙͷϑΥϧμΛࢦఆ͍ͨ͠৔߹͸มߋ σεΫτοϓʹ3͕͋Δ͜ͱΛ֬ೝ ⁢
  8. 3ͷΠϯετʔϧʙNBD04ฤʙ  ೚ҙͷ΢Σϒϒϥ΢βʢ$ISPNFɺ4BGBSJɺ&EHFͳͲʣͰ$3"/ʢIUUQTDSBOSQSPKFDUPSHʣ΁ΞΫηε %PXOMPBE3GPSNBD04ΛΫϦοΫ 3BSNQLH͕Πϯετʔϧ͞ΕΔͷͰɺμ΢ϯϩʔυͨ͠ϑΝΠϧΛ։͘ ⁞   ⁠ ར༻͍ͯ͠Δ୺຤͕.νοϓ౥ࡌͰ͋Ε͹3BSNQLH *OUFMνοϓ౥ࡌͰ͋Ε͹3QLH

    ΛΫϦοΫͯ͠μ΢ϯϩʔυʢ͜͜Ͱ͸.൛Λ૝ఆʣ جຊతʹ͸Կ΋มߋͤͣʹʮ࣍΁ʯΛΫϦοΫ͍͚ͯͩ͘͠ 'JOEFS͔Βʜμ΢ϯϩʔυ 3BSNQLHΛΫϦοΫ ࢖༻ڐ୚ܖ໿ΛಡΈɺʮಉҙ͢ΔʯΛબ୒ Πϯετʔϧઌͷબ୒ʜ.BDJOUPTI)%z ඪ४Πϯετʔϧͷ··Πϯετʔϧ ⁡ ΞϓϦέʔγϣϯϑΥϧμʹ3BQQ͕͋Δ͜ͱΛ֬ೝ ⁢
  9. 34UVEJP*%& 3ͱ1ZUIPOʢσʔλ෼ੳͷϓϩάϥϛϯάݴޠʣͷͨΊͷ౷߹։ൃ؀ڥ ओͳػೳʜίʔυೖྗิ׬ɺγϯλοΫεϋΠϥΠτɺϓϩδΣΫτ؅ཧɺศརͳγϣʔτΧοτ 3ຊମΛར༻͢ΔΑΓ΋34UVEJPͰ3Λར༻͢Δͷ͕͓͢͢Ί Α͋͘Δྫ͑ʮ3͸λϫγɺ34UVEJP͸৯ثચড়ػʯʜͲͪΒͰચ͍෺Λ͠·͔͢ʁ "(1-WϥΠηϯεͷ΋ͱɺແঈͰར༻Մೳͳόʔδϣϯ͕͋Δ

  10. 34UVEJPͷΠϯετʔϧ Φʔϓϯιʔε൛ʢ34UVEJP%FTLUPQ7FSTJPO ʣΛར༻ ೚ҙͷ΢Σϒϒϥ΢βʢ$ISPNFɺ4BGBSJɺ&EHFͳͲʣͰ34UVEJP։ൃݩͷ 1PTJUͷϖʔδʢIUUQTQPTJUDPEPXOMPBESTUVEJPEFTLUPQʣ΁ΞΫηε 4UFQ*OTUBMM34UVEJP%FTLUPQͷԼʹ͋ΔϘλϯΛΫϦοΫ͠ɺμ΢ϯϩʔυ ⁞   ͜ͷϘλϯΛΫϦοΫ 34UVEJPηοτΞοϓΛਐΊΔ

    Πϯετʔϧઌ ελʔτϝχϡʔͷϑΥϧμͷબ୒ ⁠ جຊతʹ͸Կ΋มߋͤͣʹʮ࣍΁ʯΛΫϦοΫ͍͚ͯͩ͘͠
  11. 34UVEJPͷը໘ ιʔείʔυͷฤूΛߦ͏۠ըɺɹϓϩάϥϜΛ࣮ߦ͢Δίϯιʔϧ۠ըͳͲʹը໘͕෼͔ΕɺͦΕͧΕʹλϒ͕ଘࡏ͢Δ ιʔεύωϧ ⁞   ίϯιʔϧύωϧ ୺຤ૢ࡞ɺόοΫάϥ΢ϯυδϣϒ ⁠ ؀ڥ ཤྺɺ(JUόʔδϣϯ؅ཧͳͲ

    ⁡ ϑΝΠϧ ϓϩοτɺϔϧϓυΩϡϝϯτͳͲ ⁞  
  12. ࡞ۀεϖʔεʢXPSLJOHEJSFDUPSZʣ 3Ͱͷ࡞ۀΛߦ͏ࡍͷجຊͱͳΔ؀ڥʢେہత؀ڥʣ ϑΝΠϧͷೖग़ྗ΍ΦϒδΣΫτ؅ཧͷத৺ͱͳΔ৔ॴ $VTFS໊%PDVNFOUTͳͲಛఆͷϑΥϧμΛࢦఆ͢Δ getwd() # 作業スペースを確認 #> [1] "/Users/suryu/business/cue2022aw_r104"

    # setwd(dir = ) # 作業スペースを変更 ύεͷදه͕8JOEPXTͱNBD04ɺ-JOVYͰҟͳΔͷͰ஫ҙ ˠίʔυΛڞ༗ͯ͠࡞ۀ͢Δࡍɺύεͷҧ͍͕໰୊ʹͳΔ͜ͱ͕͋Δ 34UVEJPͷϓϩδΣΫτػೳɺIFSFύοέʔδΛಋೖ͢Δ͜ͱΛקΊΔ ͷද͕ࣔ͋ΔՕॴ͸3ͷίʔυͰ͋Δ͜ͱΛࣔ͢
  13. ʲਪ঑ʳ34UVEJPͷϓϩδΣΫτػೳͷར༻ ࡞ۀεϖʔεΛϓϩδΣΫτ୯ҐͰઃఆՄೳʹ͢Δ ෼ੳҊ݅ʹԠͯ͡ϓϩδΣΫτΛ෼͚Δ Ұͭͷ࡞ۀεϖʔεΛ࢖͏৔߹ ϑΝΠϧ؅ཧ͕໘౗ɺෆಁ໌ʹͳΓ͕ͪ ͍ͭͷؒʹ͔ফ͑ͨσʔλ ෳ਺ਓͰίʔυΛฤू͢Δࡍɺ ࡞ۀεϖʔεͷύε͕ҟͳΔՄೳੑ΋͋Δ σʔλ΍εΫϦϓτ΁ͷΞΫηε͕؆қʹͳΔ (JUʹΑΔόʔδϣϯ؅ཧͷϕʔεͱͯ͠΋ར༻Ͱ͖Δ

    ϓϩδΣΫτػೳͷར఺ ҟͳΔ؀ڥͰ΋ಉ͡࡞ۀεϖʔε͕ઃఆ͞ΕΔ
  14. ϓϩδΣΫτͷ࡞੒ ϝχϡʔͷ'JMFɺ/FX1SPKFDU·ͨ͸34UVEJPͷը໘্ͷΞΠίϯ ʢͰࣔ͢ʣ͔ΒϓϩδΣΫτΛ࡞੒ ⁞ ৽نϑΥϧμͱͱ΋ʹϓϩδΣΫτΛ࡞੒   /FX1SPKFDUΛબ୒ ⁠ ϓϩδΣΫτ໊Λೖྗ ˞೔ຊޠ͸࢖Θͳ͍

  15. ϓϩδΣΫτͷ੾Γସ͑ ϝχϡʔͷ'JMFɺ0QFO1SPKFDU΍3FDFOU1SPKFDUT͔Βબ୒·ͨ͸ը໘ӈ୺ͷΞΠίϯ͔Βબ୒ ର৅ͷϓϩδΣΫτ໊ΛΫϦοΫ 34UVEJPϓϩδΣΫτ͸ʮ3QSPKʯͰऴΘΔϑΝΠϧ ϓϩδΣΫτͷ3QSPKϑΝΠϧΛ։͘

  16. 34UVEJPͷઃఆ (MPCBMʢڞ௨ʣͱ1SPKFDUʢϓϩδΣΫτʣͷछྨͷઃఆ߲໨͕͋Δ ϝχϡʔͷ5PPMTɺ(MPCBM0QUJPOTͱ1SPKFDU0QUJPOTͰͦΕͧΕઃఆ (MPCBMઃఆ 1SPKFDUઃఆ 3ͷऴྃ࣌ʹΦϒδΣΫτΛอଘͤ͞ͳ͍ ࠶ىಈ࣌ʹΦϒδΣΫτΛ෮ݩ͠ͳ͍ 3%BUBʹΑΔΦϒδΣΫτͷอଘɾ෮ݩ͸ҙਤ͠ͳ͍ಈ࡞ ʢϝϞϦෛՙ͕ߴ͘ͳΓɺॲཧ͕ॏͨ͘ͳΔͳͲʣΛੜ͡Δ͓ͦΕ͕͋ΔͷͰ஫ҙ

  17. εΫϦϓτͷ࡞੒ͱอଘ ϓϩάϥϜͷ࣮ߦ͸ίϯιʔϧͰߦΘΕΔ ίϯιʔϧʹهड़ͨ͠ίʔυ͸࢒Βͳ͍ͨΊɺεΫϦϓτͱͯ͠هड़ɾอଘ͓ͯ͘͠ ʢಉ͡ίʔυΛॻ͘खؒΛল͘ʣ Ұ࣌తʹ࣮ߦ͍ͨ͠ίʔυ͸ίϯιʔϧʹ௚઀هड़ͯ͠΋ྑ͍ ϝχϡʔͷ'JMFɺ/FX'JMF·ͨ͸A$USMA A4IJGUA A/A·ͨ͸ϑΝΠϧͷΞΠίϯ 3ͷεΫϦϓτϑΝΠϧ͸ʮ3ʯͰऴΘΔϑΝΠϧ໊ ࡞੒

    อଘ ϝχϡʔͷ'JMFɺ4BWF·ͨ͸A$USMA A4A·ͨ͸ϑϩοϐʔͷΞΠίϯ
  18. ࣮ߦͯ͠ΈΑ͏ 3εΫϦϓτΛ৽ͨʹ։͍ͯɺͭ͗ͷίʔυΛهड़ ࣮ߦ͢Δίʔυ͕ॻ͔ΕͨߦʹΧʔιϧΛҠಈ A$USMA A&OUFSA͔ΒίϯιʔϧͰ࣮ߦ ιʔεύωϧͷӈ্ʹ͋ΔA3VOAϘλϯΛԡ࣮ͯ͠ߦ ⁞   ͷද͕ࣔ͋ΔՕॴ͸3ͷίʔυͰ͋Δ͜ͱΛࣔ͢ ·ͨ͸

    # 行頭に # をつけた行や行の途中での # 以降はコメントとして扱われる # 引用符(" または ')で囲んだ文字は文字列として処理される print("Hello World")
  19. 3ͷجຊૢ࡞ Ҏ߱ͷૢ࡞͸CJOEFS্ͷ34UVEJPͰߦ͏ IUUQTNZCJOEFSPSHWHIVSJCPDVFBX@SNBJO VSMQBUISTUVEJP ΢Σϒϒϥ΢βͰ࣍ͷ63-ʹΞΫηε͠ɺ34UVEJP 4FSWFS Λىಈ͢Δ

  20. ࢛ଇԋࢉɺ࿦ཧԋࢉ ԋࢉͷ༏ઌॱҐ͸਺ֶͱಉ͡ 1 + 1 #> [1] 2 5 -

    5 #> [1] 0 2 * 3 #> [1] 6 (2 + 4) / 3 #> [1] 2 ׅހ಺ͷԋࢉ͔͚ࢉɾׂΓࢉ଍͠ࢉɾҾ͖ࢉ ࢉज़ԋࢉࢠʢ+, -, *, /ʣͷར༻ 9 > 8 #> [1] TRUE 1.1 <= 1.0 #> [1] FALSE "apple" == "apple" #> [1] TRUE "apple" != "banana" #> [1] TRUE 3Ͱ͸࿦ཧ஋ϕΫτϧͱͯ͠536&ʢਅʣɺ'"-4&ʢِʣɺ/"͕͋Δ ࿦ཧԋࢉࢠʢ, <=, >, >=, ==, !=ʣͷར༻
  21. ม਺΁ͷΦϒδΣΫτͷ୅ೖ # Rでは <- (または ->、=)によってオブジェクトの内容を変数に割り当てる x <- 6 y

    <- 3 # 変数は環境中に保存され、変数名により参照できる z <- x + y z #> [1] 9 # 変数に保存された内容は上書きされるまで残る x #> [1] 6 x <- 9 x #> [1] 9 # xの値が変わっても変更前に計算された値には影響がない z #> [1] 9 3Ͱ͸͢΂͕ͯΦϒδΣΫτʢม਺΋·ͨΦϒδΣΫτʣ
  22. ҙຯͷ͋Δ໊લΛ͚ͭΔ ม਺ͷར༻ʹΑΓɺಉ͡ॲཧΛෳ਺ճ࣮ߦ͢ΔखؒΛল͚Δ ॲཧ͕ෳࡶʹͳΔͱͲͷม਺͕Կͷ݁Ռɾ஋Λ΋͍ͬͯΔͷ͔͕Θ͔Γʹ͘͘ͳΔ ˠม਺ʹ͸Θ͔Γ΍໊͍͢લΛ͚ͭΔ͜ͱ͕ॏཁ ѱ͍ྫ B E %BUB ྑ͍ྫ NFBO@IPHF

    EG@QJZP EBUB@GVHB 3ͰͷҰൠతͳίʔσΟϯάελΠϧΛֶͿʹ͸ UJEZWFSTFTUZMFHVJEF IUUQTTUZMFUJEZWFSTFPSHJOEFYIUNM Λࢀর͢Δ → 3Ͱ͸େจࣈɾখจࣈɺશ֯ɾ൒֯͸۠ผ͞ΕΔ
  23. ؔ਺ ೖྗʹରͯ͠ॲཧΛߦ͍ɺ݁Ռɾ஋Λग़ྗ͢Δ΋ͷ  EBUB IFMMP ؔ਺ͷΠϝʔδຐ๏ͷ๧ࢠʹม਺Λ༩͑ͯग़ྗΛಘΔ ೖྗͷ஋ʹԠͯ͡ग़ྗͷ஋΋ҟͳΔ

  24. ؔ਺ 3ͷؔ਺͸ʮؔ਺໊ Ҿ਺໊஋ ʯͷܗͰ࣮ߦ͢Δ # Rには一般的な数学関数が定義されている sqrt(x = 2) #

    平方根 #> [1] 1.414214 sqrt(3) #> [1] 1.732051 log(10) # 自然対数 #> [1] 2.302585 log10(100) # 常用対数(底が10の対数) #> [1] 2 exp(1) # 指数関数 #> [1] 2.718282 ͻ͖͢͏ ͜ͷߨ࠲Ͱ͸3ͷؔ਺໊Λࣔ͢ࡍ͸ʮTRSU ؔ਺ʯͷΑ͏ʹׅހ෇͖Ͱදه͢Δ
  25. ͞·͟·ͳؔ਺ ෳ਺ͷҾ਺Λ΋ͭؔ਺ ॳظ஋Λ΋ͭҾ਺ ೖྗ͕ඞਢͳҾ਺ ؔ਺ͷ࢖͍ํΛ֮͑Δ͜ͱ͕3্ୡͷۙಓ υΩϡϝϯτΛಡΉ → IFMQ ؔ਺ͷҾ਺ʹௐ΂͍ͨؔ਺໊ʢׅހͳ͠ʣΛ༩࣮͑ͯߦ ·ͨ͸

    ௐ΂͍ͨؔ਺໊ʢׅހͳ͠ʣΛ࣮ߦ 3Ͱͷ࡞ۀʜॲཧʹඞཁͳؔ਺Λར༻ɾ࣮૷͢Δ
  26. ϔϧϓυΩϡϝϯτΛಡΉ )FMQλϒʹυΩϡϝϯτ͕දࣔ͞ΕΔ ؔ਺ͷ֓ཁ ؔ਺ͷઆ໌ ؔ਺ͷڍಈʹ͍ͭͯͷৄࡉ Ҿ਺ͷઆ໌ ར༻ํ๏ ؔ਺Λ࢖ͬͨॲཧͷྫ

  27. ϕΫτϧ c(1, 3, 5) #> [1] 1 3 5 #

    ベクトルの中の要素は同じデータ型となる c(1, "3", 5) # 数値が文字列に変換される #> [1] "1" "3" "5" c(TRUE, 1, FALSE) # 論理値が数値に変換される #> [1] 1 1 0 c(FALSE, 1, "aa") # 論理値、数値が文字列に変換される #> [1] "FALSE" "1" "aa" ॱংͷ͋Δཁૉͷू·ΓΛ࡞੒͢Δʹ͸D ؔ਺ DPNCJOF͔Β Λ࢖͏
  28. Ϧετ # リストは異なるクラスからなるオブジェクトをひとまとめに扱える x <- list( c("a", "b", NA, "d"),

    num = c(3, 1.1, 5), data = head(mtcars, 1)) x #> [[1]] #> [1] "a" "b" NA "d" #> #> $num #> [1] 3.0 1.1 5.0 #> #> $data #> mpg cyl disp hp drat wt qsec vs am gear carb #> Mazda RX4 21 6 160 110 3.9 2.62 16.46 0 1 4 4 MJTU ؔ਺ʹΑΓϦετΦϒδΣΫτΛੜ੒͢Δ
  29. ࢀর ΦϒδΣΫτ͸<ԋࢉࢠ΍<<ԋࢉࢠΛ࢖ͬͯࢀরͰ͖Δ <>͸ཁૉͷ൪߸Λࣔ͢ c(1, 3, 5)[2] # ベクトル中の2番目の要素を参照 #> [1]

    3 # 名前付きの数値ベクトルを作成 fruits <- c(apple = 120, banana = 100, grape = 800) length(fruits) # 要素の数を表示 #> [1] 3 names(fruits) # 要素に与えられた名前を出力 #> [1] "apple" "banana" "grape" fruits[1] # 要素の位置を指定して参照する #> apple #> 120 fruits["grape"] # 要素の名前を指定して参照する #> grape #> 800 fruits[[1]] # 値だけを参照する #> [1] 120 fruits[["grape"]] #> [1] 800
  30. ࢀর ΦϒδΣΫτ͸<ԋࢉࢠ΍<<ԋࢉࢠΛ࢖ͬͯࢀরͰ͖Δ # リストオブジェクトに対する[演算子を使った参照の返り値はリスト x[1] #> [[1]] #> [1] "a"

    "b" NA "d" x["num"] #> $num #> [1] 3.0 1.1 5.0 # [[演算子での参照により、リストオブジェクトの要素を元のクラスとして出力する x[[2]] #> [1] 3.0 1.1 5.0 x[["data"]] #> mpg cyl disp hp drat wt qsec vs am gear carb #> Mazda RX4 21 6 160 110 3.9 2.62 16.46 0 1 4 4
  31. ύοέʔδͷར༻

  32. ύοέʔδͷར༻ʹΑΓɺ3ͰͰ͖Δ͜ͱ͕޿͕Δ 3ʹඪ४ͰΠϯετʔϧ͞Ε͍ͯΔ૊ΈࠐΈύοέʔδ # 組み込みパッケージの確認 rownames(installed.packages(priority = "base")) #> [1] "base"

    "compiler" "datasets" "graphics" "grDevices" "grid" #> [7] "methods" "parallel" "splines" "stats" "stats4" "tcltk" #> [13] "tools" "utils" "base" "compiler" "datasets" "graphics" #> [19] "grDevices" "grid" "methods" "parallel" "splines" "stats" #> [25] "stats4" "tcltk" "tools" "utils" ύοέʔδʜؔ਺΍σʔληοτͷू·Γ ࣌఺Ͱͷ$3"/ʹొ࿥͞Εͨύοέʔδ਺͸ ݅ $3"/Ҏ֎ͷύοέʔδ഑෍ݩ (JU)VC #JPDPOEVDUPS IUUQCJPDPOEVDUPSPSH IUUQTHJUIVCDPN 3'PSHF 3VOJWFSTF IUUQTSVOJWFSTFEFW IUUQTSGPSHFSQSPKFDUPSH
  33. ύοέʔδͷΠϯετʔϧɺಡΈࠐΈ # 1. CRANに登録されているパッケージのインストール # RStudioでは`tab` の入力によってinstall.packages()関数の中でのパッケージ名の補完を行う install.packages("here") install.packages("remotes") #

    2. GitHub上のパッケージの追加 <user名>/<repository名> remotes::install_github("uribo/ssdse") ύοέʔδͷΠϯετʔϧ ύοέʔδͷಡΈࠐΈͱؔ਺ͷݺͼग़͠ here() # パッケージを読み込んでいないと関数を利用できない #> Error in here(): could not find function "here" library(here) # hereパッケージを利用可能にする #> here() starts at /Users/suryu/business/cue2022aw_r104 here() #> [1] "/Users/suryu/business/cue2022aw_r104" # library()関数でパッケージを読み込まずにパッケージの関数を利用することもできる # 名前空間(パッケージ名と関数名)を<パッケージ名>::<関数名>の形で指定し、関数を直接実行する方法 here::here() #> [1] "/Users/suryu/business/cue2022aw_r104"
  34. ύοέʔδͱͷग़ձ͍ํ $3"/5BTL7JFXT (JU)VCͰͷݕࡧ $3"/CFSSJFT ෼໺͝ͱʹؔ࿈͢ΔύοέʔδΛϦετԽͨ͠΋ͷ ྫ .JTTJOH%BUB $BVTBM*OGFSFODF .BDIJOF-FBSOJOH SFNPUFTJOTUBMM@HJUIVC

    ؔ਺Λ࢖ͬͯΠϯετʔϧ $3"/ొ࿥લͷύοέʔδ͕ଟ͋͘Δ $3"/ʹొ࿥͞Εͨύοέʔδͷ৘ใΛൃ৴͢ΔαΠτ IUUQEJSLFEEFMCVFUUFMDPNDSBOCFSSJFT IUUQTHJUIVCDPNUPQJDTS τϐοΫͰ୳͢ͷ͕͓͢͢Ί IUUQTHJUIVCDPNUPQJDTSQBDLBHFT
  35. ʲਪ঑ʳUJEZWFSTFύοέʔδ σʔλ෼ੳͰ࢖͏ػձͷଟ͍ύοέʔδΛ·ͱΊͨύοέʔδ ͜ΕΒͷύοέʔδ͸౷Ұ͞Εͨઃܭࢥ૝Ͱ։ൃ͞Ε͍ͯΔͨΊ֮͑΍͍͢ # パッケージを読み込むといくつかのパッケージが同時に利用可能になる library(tidyverse) #> ── Attaching packages

    ───── tidyverse 1.3.2 ── #> ✔ ggplot2 3.4.0 ✔ purrr 0.3.5 #> ✔ tibble 3.1.8 ✔ dplyr 1.0.10 #> ✔ tidyr 1.2.1 ✔ stringr 1.4.1 #> ✔ readr 2.1.3 ✔ forcats 0.5.2 #> ── Conflicts ─────── tidyverse_conflicts() ── #> ✖ dplyr::filter() masks stats::filter() #> ✖ dplyr::lag() masks stats::lag() UJEZWFSTFύοέʔδΛΠϯετʔϧ͢Δͱؔ࿈͢Δύοέʔδ΋Πϯετʔϧ͞ΕΔ
  36. ʲਪ঑ʳUJEZWFSTFύοέʔδ (BSSFUUBOE)BEMFZ  Λݩʹ࡞੒ ಡΈࠐΈ ੔ܗ Ճ޻ ՄࢹԽ Ϟσϧ ఻ୡ

    IUUS KTPOMJUF YNM όΠφϦϑΝΠϧͷಡΈࠐΈ ΢Σϒ্ͷσʔλɺඇߏ଄σʔλͷಡΈࠐΈ
  37. 35PPMTͱ$PNNBOE-JOF5PPMT Ұ෦ͷύοέʔδΛར༻͢Δࡍɺιʔε͔ΒͷίϯύΠϧΛٻΊΒΕΔ͜ͱ͕͋Δ ʢύοέʔδͷΠϯετʔϧࣗମ͸໰୊ͳ͘ग़དྷΔ͕ɺؔ਺͕ར༻Ͱ͖ͳ͍͜ͱ΋ʣ ྫ͑͹STUBOύοέʔδͷTUBO ؔ਺͸಺෦Ͱ$ ͷίϯύΠϧΛߦ͏ ͦͷͨΊɺ8JOEPXT؀ڥͰ͸ίϯύΠϥͱͯ͠35PPMTΛར༻͠ɺ NBD04؀ڥͰ͸ಉ༷ʹ$PNNBOE-JOF5PPMTΛಋೖ͢Δඞཁ͕ੜ͡Δ 35PPMTͷΠϯετʔϧΛଅ͢ϝοηʔδ STUBOTUBO

    ؔ਺ͷ࣮ߦʹ3UPPMT͕ඞཁͱͳΔ ผͷ໰୊ͱͯ͠ʜ8JOEPXT39ͰͷSTUBOͷಋೖʹ໰୊͕͋Δ ࢀߟʣIUUQTCMPHNDTUBOPSHTUBOSPOXJOEPXT
  38. 35PPMTͷΠϯετʔϧʢ8JOEPXTͷΈʣ ೚ҙͷ΢Σϒϒϥ΢βʢ$ISPNFɺ4BGBSJɺ&EHFͳͲʣͰIUUQTDSBOSQSPKFDUPSHCJOXJOEPXT3UPPMT΁ΞΫηε 35PPMTΛΫϦοΫ ⁞   දࣔ͞Εͨϖʔδͷதஈʹ͋Δ3UPPMTJOTUBMMFSΛΫϦοΫ͠ɺ࣮ߦϑΝΠϧSUPPMTFYFΛμ΢ϯϩʔυ μ΢ϯϩʔυ͞ΕͨϑΝΠϧΛ։͖ɺΠϯετʔϧΛ׬ྃ͢Δ جຊతʹ͸Կ΋มߋͤͣʹʮ/FYUʯΛΫϦοΫ͍͚ͯͩ͘͠

  39. $PNNBOE-JOF5PPMTͷΠϯετʔϧʢNBD04ͷΈʣ ୺຤ʢ5FSNJOBMBQQͳͲʣΛ։͔͘34UVEJPͷίϯιʔϧύωϧʹ͋Δ5FSNJOBMλϒΛΫϦοΫ YDPEFTFMFDUJOTUBMMͱೖྗ͠ɺ࣮ߦ ⁞   

  40. දܗࣜσʔλͷॲཧ

  41. දܗࣜͷσʔλʢσʔλϑϨʔϜʣ # データフレームの作成方法はいくつかある # ここではtibble::tibble()関数を使う方法を紹介する # tibbleパッケージはtidyverseに含まれるため、個別にパッケージを読み込む必要はない # library(tibble) df_zoo

    <- tibble( # 変数 = 値の形式でデータを記述する # 複数の値を扱うときは c()関数でベクトルを作成 taxon = c("食肉類", "霊長類", "霊長類", "食肉類", "鳥類"), name = c("レッサーパンダ", "チンパンジー", "マントヒヒ", "ライオン", "フンボルトペンギン"), body_length_cm = c(63.5, 85, 80, 250, 69), weight_kg = c(6, 60, 20, 225, 6))
  42. දܗࣜͷσʔλʢσʔλϑϨʔϜʣ # 出力を確認 # 一行目はデータフレームのサイズ(行と列の数)を示す # 二行目は変数の名前、三行目は各変数のデータ型、三行目以降にデータを表示 df_zoo #> #

    A tibble: 5 × 4 #> taxon name body_length_cm weight_kg #> <chr> <chr> <dbl> <dbl> #> 1 食肉類 レッサーパンダ 63.5 6 #> 2 霊長類 チンパンジー 85 60 #> 3 霊長類 マントヒヒ 80 20 #> 4 食肉類 ライオン 250 225 #> 5 鳥類 フンボルトペンギン 69 6
  43. # [演算子を使った参照では [行, 列]の形式となる # 返り値はデータフレーム df_zoo[2, ] # 2行目を表示

    #> # A tibble: 1 × 4 #> taxon name body_length_cm weight_kg #> <chr> <chr> <dbl> <dbl> #> 1 霊長類 チンパンジー 85 60 df_zoo[, 3] # 3列目を表示 #> # A tibble: 5 × 1 #> body_length_cm #> <dbl> #> 1 63.5 #> 2 85 #> 3 80 #> 4 250 #> 5 69 df_zoo[, "name"] # name列を表示 #> # A tibble: 5 × 1 #> name #> <chr> #> 1 レッサーパンダ #> 2 チンパンジー #> 3 マントヒヒ #> 4 ライオン #> 5 フンボルトペンギン σʔλϑϨʔϜதͷཁૉͷࢀর # $演算子、[[演算子を使った参照の返り値はベクトル df_zoo$name #> [1] "レッサーパンダ" "チンパンジー" "マントヒヒ" #> [4] "ライオン" "フンボルトペンギン" df_zoo[[1]] #> [1] "食肉類" "霊長類" "霊長類" "食肉類" "鳥類" df_zoo[["name"]] #> [1] "レッサーパンダ" "チンパンジー" "マントヒヒ" #> [4] "ライオン" "フンボルトペンギン"
  44. ଟ༷ͳදܗࣜϑΝΠϧͷಡΈࠐΈSFBESύοέʔδ UJEZWFSTFʹؚ·ΕΔSFBESύοέʔδ͸͞·͟·ͳϑΝΠϧΛ σʔλϑϨʔϜͱͯ͠ಡΈࠐΉɺSFBE@ ؔ਺Λఏڙ͢Δ ·ͨϑΝΠϧʹग़ྗ͢ΔͨΊͷXSJUF@ ؔ਺΋උΘ͍ͬͯΔ DTW UYU SET UTW

    MPH ςΩετܗࣜ όΠφϦܗࣜ ˞SET͸3ݻ༗ͷϑΝΠϧܗࣜ ςΩετܗࣜͷϑΝΠϧ͸ಛघͳΞϓϦέʔγϣϯΛར༻ͤͣʹத਎Λ֬ೝɾฤूͰ͖Δ
  45. ଟ༷ͳදܗࣜϑΝΠϧͷಡΈࠐΈSFBESύοέʔδ read_csv(file = here("data-raw/tokushima_zoo_animals5.csv")) #> Rows: 5 Columns: 4 #>

    ── Column specification ──────────────────────────────────────────────────────── #> Delimiter: "," #> chr (2): taxon, name #> dbl (2): body_length_cm, weight_kg #> #> ℹ Use `spec()` to retrieve the full column specification for this data. #> ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message. #> # A tibble: 5 × 4 #> taxon name body_length_cm weight_kg #> <chr> <chr> <dbl> <dbl> #> 1 食肉類 レッサーパンダ 63.5 6 #> 2 霊長類 チンパンジー 85 60 #> 3 霊長類 マントヒヒ 80 20 #> 4 食肉類 ライオン 250 225 #> 5 鳥類 フンボルトペンギン 69 6 ۠੾Γจࣈ ֤ྻ͕Ͳͷσʔλܕͱͯ͠ಡΈࠐ·Ε͔ͨ
  46. ಡΈࠐΈ࣌ͷจࣈԽ͚ͷճආ read_csv(here("data-raw/SSDSE-B-2022.csv"), show_col_types = FALSE) #> # A tibble: 565

    × 110 #> SSDSE-B-202…¹ Code Prefe…² A1101 A110101 A110102 A1102 A110201 A110202 A1301 #> <dbl> <chr> <chr> <chr> <chr> <chr> <chr> <chr> <chr> <chr> #> 1 NA <NA> <NA> "\x9… "\x91\… "\x91\… "\x9… "\x93\… "\x93\… "15\… #> 2 2019 R010… "\x96k… "525… "24720… "27780… "521… "24550… "27560… "565… #> 3 2018 R010… "\x96k… "528… "24890… "27970… "525… "24750… "27780… "577… #> … (省略) read_csv(here("data-raw/SSDSE-B-2022.csv"), show_col_types = FALSE, locale = locale(encoding = "cp932")) #> # A tibble: 565 × 110 #> SSDSE-B-202…¹ Code Prefe…² A1101 A110101 A110102 A1102 A110201 A110202 A1301 #> <dbl> <chr> <chr> <chr> <chr> <chr> <chr> <chr> <chr> <chr> #> 1 NA <NA> <NA> 総人… 総人口… 総人口… 日本… 日本人… 日本人… 15歳… #> 2 2019 R010… 北海道 5250… 2472000 2778000 5211… 2455000 2756000 5650… #> 3 2018 R010… 北海道 5286… 2489000 2797000 5253… 2475000 2778000 5770… #> … (省略) จࣈԽ͚͸Τϥʔͱͯ͠ॲཧ͞Εͳ͍ MPDBMFҾ਺ʹMPDBMF FODPEJOH Λ༩͑ͯద੾ͳΤϯίʔσΟϯάΛࢪ͢
  47. දܭࢉιϑτ͔ΒͷಡΈࠐΈSFBEYMύοέʔδ ʲಠཱߦ੓๏ਓ౷ܭηϯλʔʳ44%4&ʢڭҭ༻ඪ४σʔληοτʣ IUUQTXXXOTUBDHPKQVTFMJUFSBDZTTETF ͔Β&YDFMܗࣜͷϑΝΠϧΛμ΢ϯϩʔυ 44%4&ݝผਪҠʢ44%4&#ʣ download.file(url = "https://www.nstac.go.jp/sys/files/SSDSE-B-2022.xlsx", destfile =

    here::here("data-raw/SSDSE-B-2022.xlsx"))
  48. දܭࢉιϑτ͔ΒͷಡΈࠐΈSFBEYMύοέʔδ library(readxl) # tidyverseに含まれるのでインストールは不要。ただしパッケージの読み込みは必要 read_xlsx(here("data-raw/SSDSE-B-2022.xlsx"), sheet = 1) #> #

    A tibble: 565 × 110 #> SSDSE-B-202…¹ Code Prefe…² A1101 A110101 A110102 A1102 A110201 A110202 A1301 #> <dbl> <chr> <chr> <chr> <chr> <chr> <chr> <chr> <chr> <chr> #> 1 NA <NA> <NA> 総人… 総人口… 総人口… 日本… 日本人… 日本人… 15歳… #> 2 2019 R010… 北海道 5250… 2472000 2778000 5211… 2455000 2756000 5650… #> 3 2018 R010… 北海道 5286… 2489000 2797000 5253… 2475000 2778000 5770… #> … (省略) ΤΫηϧγʔτͷ಺༰Λ൓өͯ͠ಡΈࠐΉ
  49. ݸผͷσʔλಡΈࠐΈʹಛԽͨ͠ύοέʔδͷར༻ 44%4&ͷσʔλಡΈࠐΈʜྻ໊͕Θ͔Γʹ͍͘ ߦ໨ʹ೔ຊޠͰͷྻ໊͕ه࿥͞Ε͍ͯΔ ೔ຊޠྻ໊Λར༻ͯ͠෼ੳΛ͍ͨ͠ͱ͖͕͋Δ TTETFύοέʔδΛ༻ҙ library(ssdse) read_ssdse_b(here("data-raw/SSDSE-B-2022.csv"), lang = "ja")

    #> # A tibble: 564 × 13 #> 年度 地域…¹ 都道府県 人口…² 自然…³ 経済基…⁴ 教育$…⁵ 労働$…⁶ 文化…⁷ 居住$…⁸ #> <int> <chr> <chr> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> #> 1 2019 R01000 北海道 5250000 9.8 21463 404 185269 119613 32486 #> 2 2018 R01000 北海道 5286000 9.5 21437 422 200363 111793 35761 #> 3 2017 R01000 北海道 5320000 9.1 21430 438 211045 107166 37062 #> … (省略) ໨తʹԠͯ͡ύοέʔδɾؔ਺Λ࢖͍෼͚Δ
  50. 34UVEJPΛ࢖ͬͨಡΈࠐΈ ϝχϡʔͷ'JMFɺ*NQPSU%BUBTFUɺ'SPN5FYU SFBES ʜ͔Β *NQPSUϘλϯΛԡͯ͠ϑΝΠϧΛಡΈࠐΉ ਖ਼͘͠σʔλ͕ಡΈࠐΊΔ͔ϓϨϏϡʔ͕දࣔ͞ΕΔ ಡΈࠐΈର৅ͷϑΝΠϧͷύεΛࢦఆ͢Δ ⁞   ⁠

    ۠੾Γจࣈ΍ίϝϯτߦͷѻ͍ͳͲͷઃఆ
  51. σʔλͷίϐʔˍϖʔετ ಡΈࠐΈର৅ͷൣғΛબ୒ͯ͠ίϐʔ ⁞ 3ͷίϯιʔϧͰ࣍ͷίϚϯυΛ࣮ߦʢ04ʹΑΓҟͳΔʣ   read.table(pipe("pbpaste"))  read.table("clipboard") ˞࠶ݱੑͷ؍఺͔Βଟ༻͸ආ͚Δ dput(.Last.value)

    ίϐʔͨ͠σʔλΛੜ੒͢ΔͨΊͷ3ίϚϯυΛग़ྗ ⁠
  52. σʔλՄࢹԽ

  53. ඪ४ͷϓϩοτػೳ͕ॆ࣮ barplot(df_zoo$body_length_cm, names.arg = df_zoo$name) hist(df_zoo$weight_kg) plot(df_zoo$body_length_cm, df_zoo$weight_kg) ͞Βʹৄࡉͳઃఆ͕Մೳ ๮άϥϑ

    ࢄ෍ਤ ώετάϥϜ ໨తͷՄࢹԽදݱʹԠͯؔ͡਺Λ࢖͍෼͚Δ
  54. 3ͰͷՄࢹԽΛ؆୯ʹHHQMPUύοέʔδ ggplot(df_zoo, aes(weight_kg)) + geom_histogram(bins = 5) ggplot(df_zoo, aes(name, body_length_cm))

    + geom_bar(stat = "identity") ggplot(df_zoo, aes(body_length_cm, weight_kg)) + geom_point() ๮άϥϑ ࢄ෍ਤ ώετάϥϜ ౷Ұతͳهड़Ͱཧղ͠΍͍͢
  55. ͦͷଞͷ࿩୊

  56. ύΠϓԋࢉࢠ 3͔ΒύΠϓʢcʣԋࢉࢠ͕ಋೖ͞Εͨ G Y ͱ౳Ձ cԋࢉࢠ͸ࠨลͷ஋ΛӈลͷୈҰҾ਺ʹ౉͢ػೳΛ΋ͭ x |> f()

  57. 3ʹ͓͚Δ࿈ଓͨ͠ॲཧͷهड़⁞ ॲཧ͝ͱʹΦϒδΣΫτ΁อଘ͢Δ தؒΦϒδΣΫτΛ࢒ͯ݁͠ՌΛࢀরͰ͖Δ ʜෆཁͳதؒΦϒδΣΫτΛൃੜͤ͞ΔՄೳੑ΋͋Δ r <- rnorm(100) d <- matrix(r,

    ncol = 2) plot(d) ॲཧͷྲྀΕ ⁞   ⁠
  58. 3ʹ͓͚Δ࿈ଓͨ͠ॲཧͷهड़  ॲཧ಺༰ΛೖΕࢠࣜʹهड़͢Δ ಺ଆͷ݁Ռ͕֎ଆͷؔ਺ʹ౉͞ΕΔ ೖྗͷ໘౗͞ʢॲཧॱͱ͸ٯʹೖྗ͢Δඞཁʣ ෳࡶͳೖΕࢠߏ଄ͩͱίʔυͷՄಡੑͷ௿Լ ॲཧͷྲྀΕ plot( matrix( rnorm(100), ncol

    = 2)) ⁞   ⁠
  59. 3ʹ͓͚Δ࿈ଓͨ͠ॲཧͷهड़⁠ ύΠϓԋࢉࢠ c Λ࢖͏ ύΠϓ͔Βݟͯࠨลͷ஋Λӈลͷ஋ʢؔ਺ʣʹ༩͑Δ վߦͱࣈԼ͛Λߦ͏͜ͱͰίʔυͷՄಡੑ΋ߴ·Δ ॲཧͷྲྀΕ rnorm(100) |> matrix(ncol

    = 2) |> plot() ⁞   ⁠
  60. ࠔͬͨͱ͖͸ 3ͷॲཧ͕ਖ਼͘͠ػೳ͠ͳ͍ˠग़ྗϝοηʔδΛΑ͘ಡΉ 34UVEJPͳ͍͠ίϯϐϡʔλʔΛ࠶ىಈͯ͠࠶౓ࢼ͢ ໰୊ղܾͷͨΊͷࢦ͕ࣔॻ͔Ε͍ͯΔ͜ͱ΋͋Δ ϝοηʔδΛίϐʔͯ͠΢ΣϒݕࡧΛߦ͏ͱಉ༷ͷ໰୊ͱͦͷղܾࡦ͕ࣔ͞Ε͍ͯΔ͜ͱ͕͋Δ ˠ·Εʹ໰୊͕ղܾ͞ΕΔ͜ͱ͕͋Δ ໰୊͕࠶ൃ͢ΔՄೳੑ΋͋ΔͷͰࠜຊతͳରॲ΋ඞཁ ωοτ্ͷ3ϢʔβʔʹਘͶΔ SXBLBMBOH IUUQTSXBLBMBOHTMBDLDPN

    ͸4MBDL্ͷ3Ϣʔβʔͷަྲྀɾ࣭໰ͷͨΊͷ৔ॴ IUUQTRJJUBDPNVSJJUFNTFCCFEBCB IUUQTTQFBLFSEFDLDPNZVUBOOJIJMBUJPOIPXJMFBSOFEUPTUPQXPSSZJOHBOEBTL ৄ͍͠આ໌ɺ࢖͍ํ͸Լهࢀর
  61. ࣍ͷҰख͞Βʹ3ʹֶ͍ͭͯͿͨΊͷॻ੶ɾαΠτ അ৔ਅ࠸  ʮ3ݴޠͰ͸͡ΊΔϓϩάϥϛϯάͱσʔλ෼ੳʯιγϜ *4#/ দଜ༏࠸ɺ౬୩ܒ໌ɺلϊఆอྱɺલా࿨׮  ʮ3ϢʔβͷͨΊͷ34UVEJP<࣮ફ>ೖ໳ʯٕज़ධ࿦ࣾ *4#/ ੴాج޿

     ʮ3 で ֶ ぶデ ʔλɾ プ ϩ グ ϥϛϯ グ ೖ໳34UVEJPΛ׆༻͢Δʯڞཱग़൛ *4#/ )BEMFZ8JDLIBNɺ(BSSFUU(SPMFNVOEஶɺࠇ઒ར໌༁ɺେڮਅ໵ٕज़؂म   ʮ3Ͱ͸͡ΊΔσʔλαΠΤϯεʢ3GPS%BUB4DJFODFʣʯΦϥΠϦʔɾδϟύϯ *4#/IUUQTSETIBEDPO[ +BFIZVO4POHɺ:VLJ:BOBJʮࢲͨͪͷ3ϕετϓϥΫςΟεͷ୳ڀʯIUUQTXXXKBZTPOHOFU3#PPL