{"id":177,"date":"2023-11-10T22:06:08","date_gmt":"2023-11-10T13:06:08","guid":{"rendered":"http:\/\/bunseki-data.com\/r-onlinecourse\/?p=177"},"modified":"2023-11-11T06:12:45","modified_gmt":"2023-11-10T21:12:45","slug":"across%e9%96%a2%e6%95%b0","status":"publish","type":"post","link":"https:\/\/bunseki-data.com\/r-onlinecourse\/2023\/11\/10\/across%e9%96%a2%e6%95%b0\/","title":{"rendered":"Across\u95a2\u6570"},"content":{"rendered":"\n<pre class=\"wp-block-code\"><code>library(tidyverse)\n<\/code><\/pre>\n\n\n\n<p>\u3060\u3044\u3076\u4e45\u3057\u3076\u308a\u306bR\u306e\u95a2\u6570\u306b\u3064\u3044\u3066\u306e\u8a18\u4e8b\u3092\u66f8\u304d\u307e\u3059\u304c\u3001\u4eca\u65e5\u306f\u3001\u30a2\u30c3\u30d7\u30c7\u30fc\u30c8\u3057\u306a\u3044\u3068\u3044\u3051\u306a\u3044\u306a\u3068\u9577\u3089\u304f\u601d\u3063\u3066\u3044\u305f<code>across<\/code>\u95a2\u6570\u306e\u8a18\u4e8b\u306b\u306a\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u30dd\u30a4\u30f3\u30c8\u3068\u3057\u3066\u306f\u3001<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>across<\/code>\u95a2\u6570\u306e\u767b\u5834\u3067<code>mutate_at<\/code>,<code>mutate_if<\/code>,<code>mutate_all<\/code>\u306a\u3069\u306e\u3001<code>&lt;function&gt;_at\/if\/all<\/code>\u304c\u7d71\u4e00\u7684\u306a\u66f8\u304d\u65b9\u306b\u306a\u3063\u305f\u3002<\/li>\n<\/ul>\n\n\n\n<p>\u3068\u306a\u308a\u307e\u3059\u3002\uff08\u3068\u304f\u306b\u3001\u79c1\u306e\u30b3\u30fc\u30b9\u306e\u96c6\u8a08\u90e8\u5206\u3067\u89e3\u8aac\u3057\u3066\u3044\u305f\u5185\u5bb9\u304c\u300c\u53e4\u3044\u5185\u5bb9\u300d\u3068\u306a\u3063\u3066\u3057\u307e\u3063\u3066\u3044\u308b\u305f\u3081\u3001\u672c\u8a18\u4e8b\u3067\u88dc\u5b8c\u3044\u305f\u3060\u3051\u307e\u3059\u3068\u5e78\u3044\u3067\u3059\u3002\uff08\u5c1a\u3001mutate_at\u306e\u4f7f\u3044\u65b9\u304c\u7406\u89e3\u3067\u304d\u3066\u3044\u308c\u3070\u3001across\u306e\u7406\u89e3\u306f\u307b\u307c\u7d42\u308f\u3063\u3066\u3044\u308b\u3068\u8003\u3048\u3066\u3044\u305f\u3060\u3044\u3066\u5927\u4e08\u592b\u3067\u3059\u3002\uff09<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"across_1\"><code>across<\/code>\u95a2\u6570\u3068\u306f\u306a\u306b\u304b<\/h2>\n\n\n\n<p><code>across<\/code>\u95a2\u6570\u306f\u3001<code>{dplyr}<\/code>\u306ever1.0.0\u304b\u3089\u5b9f\u88c5\u3055\u308c\u305f\u6bd4\u8f03\u7684\u65b0\u3057\u3044\u95a2\u6570\u3067\u3059\u3002\u3053\u308c\u307e\u3067\u306edplyr\u306e\u95a2\u6570\u3092\u7f6e\u304d\u63db\u3048\u308b\u6a5f\u80fd\u304c\u3042\u308a\u3001\u307e\u305f\u3001\u4f7f\u3044\u3053\u306a\u305b\u308b\u3068\u304b\u306a\u308a\u4fbf\u5229\u306a\u306e\u3067\u7d39\u4ecb\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u5c1a\u3001<a href=\"https:\/\/dplyr.tidyverse.org\/dev\/articles\/colwise.html\">\u672c\u5bb6\u306e\u89e3\u8aac\uff08\u82f1\u8a9e\uff09<\/a>\u304c\u8aad\u3081\u308b\u65b9\u306f\u305d\u3063\u3061\u3092\u8aad\u3093\u3067\u3044\u305f\u3060\u304f\u65b9\u304c\u826f\u3044\u304b\u3082\u3057\u308c\u307e\u305b\u3093\uff08\u6c57<\/p>\n\n\n\n<p>\u672c\u8a18\u4e8b\u3067\u306f\u3001\u5b9f\u969b\u306b\u67b6\u7a7a\u306e\u30a2\u30f3\u30b1\u30fc\u30c8\u30c7\u30fc\u30bf\u304c\u624b\u5143\u306b\u3042\u308b\u3068\u3057\u3066\u305d\u306e\u30af\u30ea\u30fc\u30cb\u30f3\u30b0\u3092\u884c\u3046\u65b9\u6cd5\u3067\u89e3\u8aac\u3057\u3066\u3044\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"section_1\">\u67b6\u7a7a\u306e\u30c7\u30fc\u30bf<\/h2>\n\n\n\n<p>\u3064\u304e\u306e\u3088\u3046\u306a\u30a2\u30f3\u30b1\u30fc\u30c8\u30c7\u30fc\u30bf\u304c\u3042\u308b\u3068\u3057\u307e\u3057\u3087\u3046\u3002<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>set.seed(1234)\n\ndat &lt;- tibble(\n  q1_cat  = sample(1:3, 100, replace = TRUE) %&gt;% as.numeric(),\n  q2_num  = sample(1:4, 100, replace = TRUE) %&gt;% as.character(),\n  q3_cat  = sample(1:5, 100, replace = TRUE) %&gt;% as.numeric(),\n  q4_cat  = sample(1:2, 100, replace = TRUE) %&gt;% as.numeric(),\n  q5_num  = sample(1:4, 100, replace = TRUE) %&gt;% as.integer(),\n  q6_num  = sample(1:9, 100, replace = TRUE) %&gt;% as.character(),\n  q7_cat  = sample(1:2, 100, replace = TRUE) %&gt;% as.character(),\n  q8_cat  = sample(1:7, 100, replace = TRUE),\n  q9_num  = sample(c(\" 01\",\" 02\", \" 03\"), 100, replace = TRUE),\n  q10_cat = sample(1:4, 100, replace = TRUE)\n)\n<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>dat\n<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">## # A tibble: 100 \u00d7 10\n##    q1_cat q2_num q3_cat q4_cat q5_num q6_num q7_cat q8_cat\n##     &lt;dbl&gt; &lt;chr&gt;   &lt;dbl&gt;  &lt;dbl&gt;  &lt;int&gt; &lt;chr&gt;  &lt;chr&gt;   &lt;int&gt;\n##  1      2 2           3      2      3 7      1           1\n##  2      2 1           2      2      1 7      1           5\n##  3      1 4           3      2      3 8      2           4\n##  4      3 3           4      2      3 5      1           3\n##  5      1 4           3      2      4 6      2           4\n##  6      1 4           5      1      3 1      1           6\n##  7      2 3           1      2      2 6      2           1\n##  8      2 2           3      2      3 8      2           2\n##  9      3 4           2      2      1 4      1           7\n## 10      2 1           3      2      3 6      1           5\n## # \u2139 90 more rows\n## # \u2139 2 more variables: q9_num &lt;chr&gt;, q10_cat &lt;int&gt;\n<\/pre>\n\n\n\n<p>\u3067\u3001\u3053\u306e\u30a2\u30f3\u30b1\u30fc\u30c8\u30c7\u30fc\u30bf\u3001\u5909\u6570\u540d\u304ccat\u3067\u7d42\u308f\u3063\u3066\u308c\u3070\u30ab\u30c6\u30b4\u30ea\u30ab\u30eb\u30c7\u30fc\u30bf\u3001num\u3067\u7d42\u308f\u3063\u3066\u3044\u308c\u3070\u9023\u7d9a\u5024\u306e\u30c7\u30fc\u30bf\u3067\u3042\u308b\u3068\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u305f\u3060\u3001\u30c7\u30fc\u30bf\u306e\u5404\u5217\u306etype\u3092\u898b\u3066\u307f\u308b\u3068\u3001<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>str(dat)\n<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">## tibble [100 \u00d7 10] (S3: tbl_df\/tbl\/data.frame)\n##  $ q1_cat : num [1:100] 2 2 1 3 1 1 2 2 3 2 ...\n##  $ q2_num : chr [1:100] \"2\" \"1\" \"4\" \"3\" ...\n##  $ q3_cat : num [1:100] 3 2 3 4 3 5 1 3 2 3 ...\n##  $ q4_cat : num [1:100] 2 2 2 2 2 1 2 2 2 2 ...\n##  $ q5_num : int [1:100] 3 1 3 3 4 3 2 3 1 3 ...\n##  $ q6_num : chr [1:100] \"7\" \"7\" \"8\" \"5\" ...\n##  $ q7_cat : chr [1:100] \"1\" \"1\" \"2\" \"1\" ...\n##  $ q8_cat : int [1:100] 1 5 4 3 4 6 1 2 7 5 ...\n##  $ q9_num : chr [1:100] \" 01\" \" 01\" \" 02\" \" 03\" ...\n##  $ q10_cat: int [1:100] 1 1 4 2 3 3 1 4 3 1 ...\n<\/pre>\n\n\n\n<p>\u3053\u3093\u306a\u611f\u3058\u3067\u3001\u4e00\u81f4\u3057\u3066\u3044\u307e\u305b\u3093\u3002<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"section_2\">\u9811\u5f35\u3063\u3066\u578b\u5909\u63db\u3092\u884c\u3046<\/h2>\n\n\n\n<p>\u3053\u3053\u3067\u3001mutate_at\u3092\u77e5\u3089\u306a\u3044\u5834\u5408\u306f\u3001\u5909\u6570\u540d\u304ccat\u3067\u7d42\u308f\u308b\u5217\u3068\u56e0\u5b50\u578b\u306b\u3001\u5909\u6570\u540d\u304cnum\u3067\u7d42\u308f\u308b\u5217\u3092double\u578b\u306b\u5909\u3048\u308b\u3053\u3068\u3092\u8003\u3048\u308b\u3068\u3001\u6b21\u306e\u3088\u3046\u306a\u30b9\u30af\u30ea\u30d7\u30c8\u306b\u306a\u308d\u3046\u304b\u3068\u601d\u3044\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>dat_basic &lt;- dat %&gt;% \n  mutate(\n    q1_cat  = as.factor(q1_cat),\n    q2_num  = as.double(q2_num),\n    q3_cat  = as.factor(q3_cat),\n    q4_cat  = as.factor(q4_cat),\n    q5_num  = as.double(q5_num),\n    q6_num  = as.double(q6_num),\n    q7_cat  = as.factor(q7_cat),\n    q8_cat  = as.factor(q8_cat),\n    q9_num  = as.double(q9_num),\n    q10_cat = as.factor(q10_cat)\n  )\n\nstr(dat_basic)\n<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">## tibble [100 \u00d7 10] (S3: tbl_df\/tbl\/data.frame)\n##  $ q1_cat : Factor w\/ 3 levels \"1\",\"2\",\"3\": 2 2 1 3 1 1 2 2 3 2 ...\n##  $ q2_num : num [1:100] 2 1 4 3 4 4 3 2 4 1 ...\n##  $ q3_cat : Factor w\/ 5 levels \"1\",\"2\",\"3\",\"4\",..: 3 2 3 4 3 5 1 3 2 3 ...\n##  $ q4_cat : Factor w\/ 2 levels \"1\",\"2\": 2 2 2 2 2 1 2 2 2 2 ...\n##  $ q5_num : num [1:100] 3 1 3 3 4 3 2 3 1 3 ...\n##  $ q6_num : num [1:100] 7 7 8 5 6 1 6 8 4 6 ...\n##  $ q7_cat : Factor w\/ 2 levels \"1\",\"2\": 1 1 2 1 2 1 2 2 1 1 ...\n##  $ q8_cat : Factor w\/ 7 levels \"1\",\"2\",\"3\",\"4\",..: 1 5 4 3 4 6 1 2 7 5 ...\n##  $ q9_num : num [1:100] 1 1 2 3 3 1 3 3 2 2 ...\n##  $ q10_cat: Factor w\/ 4 levels \"1\",\"2\",\"3\",\"4\": 1 1 4 2 3 3 1 4 3 1 ...\n<\/pre>\n\n\n\n<p>\u3069\u3046\u3067\u3057\u3087\u3046\u304b\uff1f<\/p>\n\n\n\n<p>\u3068\u308a\u3042\u3048\u305a\u3001\u3084\u308a\u305f\u304b\u3063\u305f\u3053\u3068\u306f\u3067\u304d\u3066\u3044\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u305f\u3060\u3001\u3053\u306e\u3084\u308a\u65b9\u306b\u306f\u9650\u754c\u304c\u6765\u307e\u3059\u3002\u4f8b\u3048\u3070\u3001\u4eca\u56de\u306f10\u5217\u3060\u3051\u306e\u51e6\u7406\u3067\u3057\u305f\u304c\u3001\u3053\u308c\u304c100\u5909\u6570\u3068\u304b\u306b\u306a\u3063\u305f\u5834\u5408\u3001\u7d50\u69cb\u624b\u9593\u306b\u306a\u308b\u3068\u611f\u3058\u307e\u305b\u3093\u304b\uff1f<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"mutate-xxx\"><code>mutate_XXX<\/code>\u95a2\u6570\u3092\u5229\u7528\u3057\u3066\u578b\u5909\u63db<\/h2>\n\n\n\n<p>\u30aa\u30f3\u30e9\u30a4\u30f3\u30b3\u30fc\u30b9\u3067\u306f\u3001\u3053\u306e\u3088\u3046\u306a\u8ab2\u984c\u306b\u5bfe\u3057\u3066\u306f\u3001mutate_at\u7b49\u3092\u5229\u7528\u3059\u308c\u3070\u7c21\u5358\u306b\u3067\u304d\u308b\u3053\u3068\u3092\u304a\u793a\u3057\u3044\u305f\u3057\u307e\u3057\u305f\u3002<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>with_xxx &lt;- dat %&gt;% \n  mutate_at(.vars = vars(ends_with(\"cat\")), .funs = ~{as.factor(.)}) %&gt;% \n  mutate_at(.vars = vars(ends_with(\"num\")), .funs = ~{as.numeric(.)})\n\nstr(with_xxx)\n<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">## tibble [100 \u00d7 10] (S3: tbl_df\/tbl\/data.frame)\n##  $ q1_cat : Factor w\/ 3 levels \"1\",\"2\",\"3\": 2 2 1 3 1 1 2 2 3 2 ...\n##  $ q2_num : num [1:100] 2 1 4 3 4 4 3 2 4 1 ...\n##  $ q3_cat : Factor w\/ 5 levels \"1\",\"2\",\"3\",\"4\",..: 3 2 3 4 3 5 1 3 2 3 ...\n##  $ q4_cat : Factor w\/ 2 levels \"1\",\"2\": 2 2 2 2 2 1 2 2 2 2 ...\n##  $ q5_num : num [1:100] 3 1 3 3 4 3 2 3 1 3 ...\n##  $ q6_num : num [1:100] 7 7 8 5 6 1 6 8 4 6 ...\n##  $ q7_cat : Factor w\/ 2 levels \"1\",\"2\": 1 1 2 1 2 1 2 2 1 1 ...\n##  $ q8_cat : Factor w\/ 7 levels \"1\",\"2\",\"3\",\"4\",..: 1 5 4 3 4 6 1 2 7 5 ...\n##  $ q9_num : num [1:100] 1 1 2 3 3 1 3 3 2 2 ...\n##  $ q10_cat: Factor w\/ 4 levels \"1\",\"2\",\"3\",\"4\": 1 1 4 2 3 3 1 4 3 1 ...\n<\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>#\u3042\u308b\u3044\u306f\u3001,.vars, .funs\u3092\u8a18\u8f09\u3057\u306a\u3044\u3067\u3001\nwith_xxx &lt;- dat %&gt;% \n  mutate_at(vars(ends_with(\"cat\")), as.factor) %&gt;% \n  mutate_at(vars(ends_with(\"num\")), as.numeric)\n\nstr(with_xxx)\n<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">## tibble [100 \u00d7 10] (S3: tbl_df\/tbl\/data.frame)\n##  $ q1_cat : Factor w\/ 3 levels \"1\",\"2\",\"3\": 2 2 1 3 1 1 2 2 3 2 ...\n##  $ q2_num : num [1:100] 2 1 4 3 4 4 3 2 4 1 ...\n##  $ q3_cat : Factor w\/ 5 levels \"1\",\"2\",\"3\",\"4\",..: 3 2 3 4 3 5 1 3 2 3 ...\n##  $ q4_cat : Factor w\/ 2 levels \"1\",\"2\": 2 2 2 2 2 1 2 2 2 2 ...\n##  $ q5_num : num [1:100] 3 1 3 3 4 3 2 3 1 3 ...\n##  $ q6_num : num [1:100] 7 7 8 5 6 1 6 8 4 6 ...\n##  $ q7_cat : Factor w\/ 2 levels \"1\",\"2\": 1 1 2 1 2 1 2 2 1 1 ...\n##  $ q8_cat : Factor w\/ 7 levels \"1\",\"2\",\"3\",\"4\",..: 1 5 4 3 4 6 1 2 7 5 ...\n##  $ q9_num : num [1:100] 1 1 2 3 3 1 3 3 2 2 ...\n##  $ q10_cat: Factor w\/ 4 levels \"1\",\"2\",\"3\",\"4\": 1 1 4 2 3 3 1 4 3 1 ...\n<\/pre>\n\n\n\n<p>\u3068\u3001\u3053\u3093\u306a\u611f\u3058\u3067\u5909\u63db\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3057\u305f\u3002mutate_at\u3055\u3048\u7406\u89e3\u3067\u304d\u3066\u3044\u308c\u3070\u3001\u4e0a\u8a18\u306e\u3088\u3046\u306a\u5909\u6570\u540d\u304b\u3089\u578b\u3092\u5909\u63db\u3055\u305b\u308b\u3088\u3046\u306a\u3053\u3068\u306f\u6bd4\u8f03\u7684\u7c21\u5358\u306b\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u305f\u3060\u3001\u6b8b\u5ff5\u306a\u3053\u3068\u306b\u3001<code>mutate_at<\/code>\u306fdeplicated\u3068\u306a\u3063\u3066\u3044\u308b\u305f\u3081\u3001\u65b0\u3057\u3044<code>across<\/code>\u95a2\u6570\u3092\u5229\u7528\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002\u3002<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"deplicated\">\u306a\u305cdeplicated\u3055\u308c\u305f\u304b<\/h3>\n\n\n\n<p>\u3053\u3053\u306f\u8aad\u307f\u98db\u3070\u3057\u3066\u3082\u3089\u3063\u3066\u3082\u69cb\u3044\u307e\u305b\u3093\u3002hadley\u3055\u3093\u306e\u8aac\u660e\u3092Youtube\u3084\u30d6\u30ed\u30b0\u3001Twitter\u306a\u3069\u3067\u8ffd\u3063\u3066\u3044\u308b\u3068\u3001<\/p>\n\n\n\n<p>\u300cmutate_at, mutate_all, mutate_if, summarise_at, summarise_all, summarise_if, filter_at, filter_if\u2026\u300d\u7b49\u3092\u30e1\u30f3\u30c6\u3059\u308b\u306e\u304c\u5927\u5909\u3060\u304b\u3089\u3001<code>mutate<\/code> + <code>across<\/code>\u3068\u3057\u3066across\u95a2\u6570\u306e\u30e1\u30f3\u30c6\u30ca\u30f3\u30b9\u3060\u3051\u3067\u826f\u3044\u3088\u3046\u306b\u3057\u305f\uff08\u610f\u8a33\uff09<\/p>\n\n\n\n<p>\u3068\u3044\u3046\u3088\u3046\u306b\u8aad\u307f\u53d6\u308c\u307e\u3059\u3002<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"across_2\"><code>across<\/code>\u95a2\u6570\u3067\u3084\u3063\u3066\u307f\u308b\u3002<\/h2>\n\n\n\n<p>\u6b21\u306e\u4e09\u3064\u306e\u51e6\u7406\u306f\u3059\u3079\u3066\u540c\u3058\u3053\u3068\u3092\u3057\u3066\u3044\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code># \u9811\u5f35\u3063\u3066\u578b\u5909\u63db\ndat_ganbaru &lt;- dat %&gt;% \n  mutate(\n    q1_cat  = as.factor(q1_cat),\n    q2_num  = as.double(q2_num),\n    q3_cat  = as.factor(q3_cat),\n    q4_cat  = as.factor(q4_cat),\n    q5_num  = as.double(q5_num),\n    q6_num  = as.double(q6_num),\n    q7_cat  = as.factor(q7_cat),\n    q8_cat  = as.factor(q8_cat),\n    q9_num  = as.double(q9_num),\n    q10_cat = as.factor(q10_cat)\n  )\n\n# mutate_at\u3067\u578b\u5909\u63db\ndat_at &lt;- dat %&gt;% \n  mutate_at(.vars = vars(ends_with(\"cat\")), .funs = ~{as.factor(.)}) %&gt;% \n  mutate_at(.vars = vars(ends_with(\"num\")), .funs = ~{as.numeric(.)})\n\n# across\u3067\u578b\u5909\u63db\ndat_across &lt;- dat %&gt;% \n  mutate( across(.cols = c(ends_with(\"cat\")), .fns = ~{as.factor(.)}) ) %&gt;% \n  mutate( across(.cols = c(ends_with(\"num\")), .fns = ~{as.numeric(.)}) )\n<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>identical(dat_ganbaru, dat_at)\n<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">## [1] TRUE\n<\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>identical(dat_ganbaru, dat_across)\n<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">## [1] TRUE\n<\/pre>\n\n\n\n<p>\u540c\u3058\u3067\u3059\u306d?<\/p>\n\n\n\n<p>\u3067\u306f\u3001\u6b21\u306f\u3001<code>across<\/code>\u95a2\u6570\u304c\u3069\u306e\u3088\u3046\u306b\u52d5\u3044\u3066\u3044\u308b\u304b\u306e\u30a4\u30e1\u30fc\u30b8\u3092\u3064\u304b\u3093\u3067\u304a\u304d\u307e\u3057\u3087\u3046\u3002<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"across_3\"><code>across<\/code>\u306e\u30a4\u30e1\u30fc\u30b8<\/h3>\n\n\n\n<p>acrtoss\u306e\u30a4\u30e1\u30fc\u30b8\u3067\u3059\u304c\u3001\u539f\u5247\u306f\u3001mutate_at\u306e\u30a4\u30e1\u30fc\u30b8\u3068\u305d\u3046\u5927\u304d\u304f\u306f\u5909\u308f\u308a\u307e\u305b\u3093\u3002<\/p>\n\n\n\n<p><img decoding=\"async\" src=\"\/post\/2020-11-22-across-function_files\/1.jpg\" alt=\"\"><br>\u307e\u305a\u3001across\u95a2\u6570\u306f\u3053\u306e\u753b\u50cf\u306e\u3088\u3046\u306b\u3001<code>mutate<\/code>\u306e\u4e2d\u3067\u5229\u7528\u3057\u307e\u3059\u3002<code>across<\/code>\u306b\u306f\u3001<code>.cols<\/code>\u3068<code>.fns<\/code>\u306e\u4e8c\u3064\u306eargument\u304c\u5fc5\u8981\u3067\u3059\u3002<\/p>\n\n\n\n<p><code>.cols<\/code>\u306e\u6307\u5b9a\u306e\u3084\u308a\u65b9\u306f\u3001<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"1024\" height=\"576\" src=\"https:\/\/bunseki-data.com\/r-onlinecourse\/wp-content\/uploads\/2023\/11\/2-1024x576.jpg\" alt=\"\" class=\"wp-image-182\" srcset=\"https:\/\/bunseki-data.com\/r-onlinecourse\/wp-content\/uploads\/2023\/11\/2-1024x576.jpg 1024w, https:\/\/bunseki-data.com\/r-onlinecourse\/wp-content\/uploads\/2023\/11\/2-300x169.jpg 300w, https:\/\/bunseki-data.com\/r-onlinecourse\/wp-content\/uploads\/2023\/11\/2-768x432.jpg 768w, https:\/\/bunseki-data.com\/r-onlinecourse\/wp-content\/uploads\/2023\/11\/2.jpg 1280w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p><code>select<\/code>\u3067\u306e\u5217\u6307\u5b9a\u306e\u65b9\u6cd5\u3092<code>c()<\/code>\u306e\u4e2d\u3067\u7d44\u307f\u5408\u308f\u305b\u3066\u4f7f\u3046\u3053\u3068\u304c\u53ef\u80fd\u3067\u3059\u3002\uff08\u307e\u305f\u3001\u76f4\u63a5\u5217\u540d\u3092\u8a18\u8f09\u3057\u3066\u3082OK\u3067\u3059\uff09<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"1024\" height=\"576\" src=\"https:\/\/bunseki-data.com\/r-onlinecourse\/wp-content\/uploads\/2023\/11\/3-1024x576.jpg\" alt=\"\" class=\"wp-image-183\" srcset=\"https:\/\/bunseki-data.com\/r-onlinecourse\/wp-content\/uploads\/2023\/11\/3-1024x576.jpg 1024w, https:\/\/bunseki-data.com\/r-onlinecourse\/wp-content\/uploads\/2023\/11\/3-300x169.jpg 300w, https:\/\/bunseki-data.com\/r-onlinecourse\/wp-content\/uploads\/2023\/11\/3-768x432.jpg 768w, https:\/\/bunseki-data.com\/r-onlinecourse\/wp-content\/uploads\/2023\/11\/3.jpg 1280w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>\u5f8c\u306f\u3001<code>.fns<\/code>\u3067<code>.cols<\/code>\u3067\u6307\u5b9a\u3057\u305f\u30d9\u30af\u30c8\u30eb\u3092\u53d7\u3051\u53d6\u3063\u3066\u30d9\u30af\u30c8\u30eb\u3092\u8fd4\u3059\u95a2\u6570\u3092\u6307\u5b9a\u3057\u3066\u3042\u3052\u308c\u3070\u3001<code>.cols<\/code>\u3067\u6307\u5b9a\u3055\u308c\u305f\u5217\u304c\u9806\u756a\u306b\u51e6\u7406\u3055\u308c\u3066\u3001\u6700\u7d42\u7684\u306a\u7d50\u679c\u3068\u306a\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"1024\" height=\"576\" src=\"https:\/\/bunseki-data.com\/r-onlinecourse\/wp-content\/uploads\/2023\/11\/4-1024x576.jpg\" alt=\"\" class=\"wp-image-184\" srcset=\"https:\/\/bunseki-data.com\/r-onlinecourse\/wp-content\/uploads\/2023\/11\/4-1024x576.jpg 1024w, https:\/\/bunseki-data.com\/r-onlinecourse\/wp-content\/uploads\/2023\/11\/4-300x169.jpg 300w, https:\/\/bunseki-data.com\/r-onlinecourse\/wp-content\/uploads\/2023\/11\/4-768x432.jpg 768w, https:\/\/bunseki-data.com\/r-onlinecourse\/wp-content\/uploads\/2023\/11\/4.jpg 1280w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>\u3046\u3048\u306e\u753b\u50cf\u306e\u30a4\u30e1\u30fc\u30b8\u3092\u305d\u306e\u307e\u307e\uff32\u3067\u5b9f\u884c\u3057\u3066\u307f\u308b\u3068\u3001<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>dat &lt;- tibble(\n  aa = 1:5, ba = 1:5, ca = 1:5, ab = 1:5, bb = 1:5, cb = 1:5 \n)\n\ndat\n<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">## # A tibble: 5 \u00d7 6\n##      aa    ba    ca    ab    bb    cb\n##   &lt;int&gt; &lt;int&gt; &lt;int&gt; &lt;int&gt; &lt;int&gt; &lt;int&gt;\n## 1     1     1     1     1     1     1\n## 2     2     2     2     2     2     2\n## 3     3     3     3     3     3     3\n## 4     4     4     4     4     4     4\n## 5     5     5     5     5     5     5\n<\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>dat %&gt;% \n  mutate( across( ends_with(\"b\"), ~{str_c(.,\"-b\")}) )\n<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">## # A tibble: 5 \u00d7 6\n##      aa    ba    ca ab    bb    cb   \n##   &lt;int&gt; &lt;int&gt; &lt;int&gt; &lt;chr&gt; &lt;chr&gt; &lt;chr&gt;\n## 1     1     1     1 1-b   1-b   1-b  \n## 2     2     2     2 2-b   2-b   2-b  \n## 3     3     3     3 3-b   3-b   3-b  \n## 4     4     4     4 4-b   4-b   4-b  \n## 5     5     5     5 5-b   5-b   5-b\n<\/pre>\n\n\n\n<p>\u3069\u3046\u3067\u3057\u3087\u3046\u304b\uff1f<\/p>\n\n\n\n<p>\u30a4\u30e1\u30fc\u30b8\u3068\u5b9f\u884c\u7d50\u679c\u304c\u4e00\u81f4\u3057\u307e\u3057\u305f\u3067\u3057\u3087\u3046\u304b\uff1f<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"summarise\">summarise\u306e\u4e2d\u3067\u5229\u7528\u3057\u3066\u307f\u308b\u3002<\/h2>\n\n\n\n<p>\u305d\u308c\u3067\u306f\u3001\u95a2\u6570\u306e\u5229\u7528\u306e\u3084\u308a\u65b9\u306e\u30a4\u30e1\u30fc\u30b8\u304c\u3064\u3044\u305f\u3068\u3053\u308d\u3067\u3001\u5c11\u3057\u5fdc\u7528\u3057\u3066\u307f\u307e\u3057\u3087\u3046\u3002<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>dat_across\n<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">## # A tibble: 100 \u00d7 10\n##    q1_cat q2_num q3_cat q4_cat q5_num q6_num q7_cat q8_cat\n##    &lt;fct&gt;   &lt;dbl&gt; &lt;fct&gt;  &lt;fct&gt;   &lt;dbl&gt;  &lt;dbl&gt; &lt;fct&gt;  &lt;fct&gt; \n##  1 2           2 3      2           3      7 1      1     \n##  2 2           1 2      2           1      7 1      5     \n##  3 1           4 3      2           3      8 2      4     \n##  4 3           3 4      2           3      5 1      3     \n##  5 1           4 3      2           4      6 2      4     \n##  6 1           4 5      1           3      1 1      6     \n##  7 2           3 1      2           2      6 2      1     \n##  8 2           2 3      2           3      8 2      2     \n##  9 3           4 2      2           1      4 1      7     \n## 10 2           1 3      2           3      6 1      5     \n## # \u2139 90 more rows\n## # \u2139 2 more variables: q9_num &lt;dbl&gt;, q10_cat &lt;fct&gt;\n<\/pre>\n\n\n\n<p>\u306f\u3001\u76ee\u7684\u3068\u3059\u308b\u5909\u6570\u306e\u578b\u306f\u601d\u3063\u305f\u3082\u306e\u306b\u306a\u3063\u3066\u3044\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u3053\u3053\u304b\u3089\u306f\u3001\u6b21\u306e\u3088\u3046\u306a\u5f62\u306e\u30c7\u30fc\u30bf\u51fa\u4f1a\u3063\u305f\u5834\u5408\u306e\u96c6\u8a08\u65b9\u6cd5\u3092\u8003\u3048\u3066\u307f\u307e\u3057\u3087\u3046\u3002<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>new_name &lt;- names(dat_across) %&gt;% \n  str_extract(\"^q\\\\d+(?=_)\")\n\ndat2 &lt;- dat_across %&gt;% setNames(new_name)\n\ndat2\n<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">## # A tibble: 100 \u00d7 10\n##    q1       q2 q3    q4       q5    q6 q7    q8       q9 q10  \n##    &lt;fct&gt; &lt;dbl&gt; &lt;fct&gt; &lt;fct&gt; &lt;dbl&gt; &lt;dbl&gt; &lt;fct&gt; &lt;fct&gt; &lt;dbl&gt; &lt;fct&gt;\n##  1 2         2 3     2         3     7 1     1         1 1    \n##  2 2         1 2     2         1     7 1     5         1 1    \n##  3 1         4 3     2         3     8 2     4         2 4    \n##  4 3         3 4     2         3     5 1     3         3 2    \n##  5 1         4 3     2         4     6 2     4         3 3    \n##  6 1         4 5     1         3     1 1     6         1 3    \n##  7 2         3 1     2         2     6 2     1         3 1    \n##  8 2         2 3     2         3     8 2     2         3 4    \n##  9 3         4 2     2         1     4 1     7         2 3    \n## 10 2         1 3     2         3     6 1     5         2 1    \n## # \u2139 90 more rows\n<\/pre>\n\n\n\n<p>\u3053\u3053\u3067\u3001q10\u3092\u30b0\u30eb\u30fc\u30d7\u5909\u6570\u3068\u3057\u3066q1\u304b\u3089q9\u307e\u3067\u3092\u3001\u305d\u306e\u30c7\u30fc\u30bf\u304cnumeric\u3067\u3042\u308c\u3070\u5e73\u5747\u3068SD\u3092\u7b97\u51fa\u3059\u308b\u3068\u3044\u3046\u3053\u3068\u3092\u3057\u3066\u307f\u307e\u3057\u3087\u3046\u3002<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>str(dat2)\n<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">## tibble [100 \u00d7 10] (S3: tbl_df\/tbl\/data.frame)\n##  $ q1 : Factor w\/ 3 levels \"1\",\"2\",\"3\": 2 2 1 3 1 1 2 2 3 2 ...\n##  $ q2 : num [1:100] 2 1 4 3 4 4 3 2 4 1 ...\n##  $ q3 : Factor w\/ 5 levels \"1\",\"2\",\"3\",\"4\",..: 3 2 3 4 3 5 1 3 2 3 ...\n##  $ q4 : Factor w\/ 2 levels \"1\",\"2\": 2 2 2 2 2 1 2 2 2 2 ...\n##  $ q5 : num [1:100] 3 1 3 3 4 3 2 3 1 3 ...\n##  $ q6 : num [1:100] 7 7 8 5 6 1 6 8 4 6 ...\n##  $ q7 : Factor w\/ 2 levels \"1\",\"2\": 1 1 2 1 2 1 2 2 1 1 ...\n##  $ q8 : Factor w\/ 7 levels \"1\",\"2\",\"3\",\"4\",..: 1 5 4 3 4 6 1 2 7 5 ...\n##  $ q9 : num [1:100] 1 1 2 3 3 1 3 3 2 2 ...\n##  $ q10: Factor w\/ 4 levels \"1\",\"2\",\"3\",\"4\": 1 1 4 2 3 3 1 4 3 1 ...\n<\/pre>\n\n\n\n<p>\u3053\u3053\u3067\u3001numeric\u306a\u306e\u306f\u3001q2\u3001q5\u3001q6\u3001q9\u306e4\u5909\u6570\u3067\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>dat2 %&gt;% \n  group_by(q10) %&gt;% \n  summarise( \n    across(.cols = where(is.numeric), \n           .fns = \n             list(mean = ~{mean(.)}, \n                  sd   = ~{sd(.)})\n          ) \n  )\n<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">## # A tibble: 4 \u00d7 9\n##   q10   q2_mean q2_sd q5_mean q5_sd q6_mean q6_sd q9_mean q9_sd\n##   &lt;fct&gt;   &lt;dbl&gt; &lt;dbl&gt;   &lt;dbl&gt; &lt;dbl&gt;   &lt;dbl&gt; &lt;dbl&gt;   &lt;dbl&gt; &lt;dbl&gt;\n## 1 1        2.06  1.06    2.44 0.856    6.33  2       1.83 0.786\n## 2 2        2.67  1.07    2.56 1.12     4.59  2.53    2.22 0.934\n## 3 3        2.70  1.14    2.96 1.02     4.19  2.66    1.89 0.847\n## 4 4        2.36  1.10    2.54 0.962    5.43  2.59    1.86 0.848\n<\/pre>\n\n\n\n<p>\u3069\u3046\u3067\u3057\u3087\u3046\u304b\uff1f<\/p>\n\n\n\n<p>\u96c6\u8a08\u3067\u304d\u3066\u3044\u307e\u3059\u306d\uff1f<\/p>\n\n\n\n<p>\u3053\u308c\u3092\u30ad\u30ec\u30a4\u306a\u5f62\u306b\u6574\u3048\u308b\u306e\u3067\u3042\u308c\u3070\u3001\uff08\u3042\u3048\u3066\u30d1\u30c3\u30b1\u30fc\u30b8\u3092\u5229\u7528\u3057\u306a\u3044\u3067\u884c\u3046\u306e\u3067\u3042\u308c\u3070\uff09<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sumdat &lt;- dat2 %&gt;% \n  group_by(q10) %&gt;% \n  summarise( \n    across(.cols = where(is.numeric), \n           .fns = \n             list(mean = ~{mean(.)}, \n                  sd   = ~{sd(.)})\n          ) \n  )\n\nsumdat %&gt;% \n  pivot_longer(cols = -q10, names_sep = \"_\", names_to = c(\"q\",\"type\")) %&gt;% \n  pivot_wider(id_cols = c(q10,q), names_from = type, values_from = value) %&gt;% \n  mutate( across(c(mean,sd), ~{scales::comma(., accuracy = 0.02)})  ) %&gt;% \n  mutate(res = str_c(mean,\"(\",sd,\")\")) %&gt;% \n  select(q10, q, res) %&gt;% \n  pivot_wider(id_cols = q10, names_from = q, values_from = res)\n<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">## # A tibble: 4 \u00d7 5\n##   q10   q2         q5         q6         q9        \n##   &lt;fct&gt; &lt;chr&gt;      &lt;chr&gt;      &lt;chr&gt;      &lt;chr&gt;     \n## 1 1     2.06(1.06) 2.44(0.86) 6.34(2.00) 1.84(0.78)\n## 2 2     2.66(1.08) 2.56(1.12) 4.60(2.54) 2.22(0.94)\n## 3 3     2.70(1.14) 2.96(1.02) 4.18(2.66) 1.88(0.84)\n## 4 4     2.36(1.10) 2.54(0.96) 5.42(2.58) 1.86(0.84)\n<\/pre>\n\n\n\n<p>\u3053\u3093\u306a\u611f\u3058\u3067\u51e6\u7406\u3067\u304d\u305f\u308a\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u3053\u306e\u8868\u3092\u4f5c\u308b\u3068\u304d\u306b\u3082\u3001\u9014\u4e2d\u3067<code>scales::comma<\/code>\u3092\u5e73\u5747\u3068SD\u306e2\u5217\u306b\u5f53\u3066\u306f\u3081\u308b\u5834\u5408\u306b<code>across<\/code>\u3092\u5229\u7528\u3057\u3066\u3044\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u4ee5\u4e0a\u3001<code>across<\/code>\u95a2\u6570\u306e\u5c0e\u5165\u3067\u3057\u305f\u3002<\/p>\n\n\n\n<p>Have a happy R life!<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"section_3\">\u88dc\u8db3<\/h2>\n\n\n\n<p>\u3061\u306a\u307f\u306b\u3001\u6700\u5f8c\u306e\u5909\u63db\u30011\u884c\u305a\u3064\u306e\u5909\u63db\u7d50\u679c\u3092\u8f09\u305b\u3066\u304a\u304f\u3068\u3001<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sumdat \n<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">## # A tibble: 4 \u00d7 9\n##   q10   q2_mean q2_sd q5_mean q5_sd q6_mean q6_sd q9_mean q9_sd\n##   &lt;fct&gt;   &lt;dbl&gt; &lt;dbl&gt;   &lt;dbl&gt; &lt;dbl&gt;   &lt;dbl&gt; &lt;dbl&gt;   &lt;dbl&gt; &lt;dbl&gt;\n## 1 1        2.06  1.06    2.44 0.856    6.33  2       1.83 0.786\n## 2 2        2.67  1.07    2.56 1.12     4.59  2.53    2.22 0.934\n## 3 3        2.70  1.14    2.96 1.02     4.19  2.66    1.89 0.847\n## 4 4        2.36  1.10    2.54 0.962    5.43  2.59    1.86 0.848\n<\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>sumdat %&gt;% \n  pivot_longer(\n    cols = -q10, \n    names_sep = \"_\", \n    names_to = c(\"q\",\"type\")\n  )\n<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">## # A tibble: 32 \u00d7 4\n##    q10   q     type  value\n##    &lt;fct&gt; &lt;chr&gt; &lt;chr&gt; &lt;dbl&gt;\n##  1 1     q2    mean  2.06 \n##  2 1     q2    sd    1.06 \n##  3 1     q5    mean  2.44 \n##  4 1     q5    sd    0.856\n##  5 1     q6    mean  6.33 \n##  6 1     q6    sd    2    \n##  7 1     q9    mean  1.83 \n##  8 1     q9    sd    0.786\n##  9 2     q2    mean  2.67 \n## 10 2     q2    sd    1.07 \n## # \u2139 22 more rows\n<\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>sumdat %&gt;% \n  pivot_longer(cols = -q10, names_sep = \"_\", names_to = c(\"q\",\"type\")) %&gt;% \n  pivot_wider(\n    id_cols = c(q10,q), \n    names_from = type, \n    values_from = value\n\u3000) \n<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">## # A tibble: 16 \u00d7 4\n##    q10   q      mean    sd\n##    &lt;fct&gt; &lt;chr&gt; &lt;dbl&gt; &lt;dbl&gt;\n##  1 1     q2     2.06 1.06 \n##  2 1     q5     2.44 0.856\n##  3 1     q6     6.33 2    \n##  4 1     q9     1.83 0.786\n##  5 2     q2     2.67 1.07 \n##  6 2     q5     2.56 1.12 \n##  7 2     q6     4.59 2.53 \n##  8 2     q9     2.22 0.934\n##  9 3     q2     2.70 1.14 \n## 10 3     q5     2.96 1.02 \n## 11 3     q6     4.19 2.66 \n## 12 3     q9     1.89 0.847\n## 13 4     q2     2.36 1.10 \n## 14 4     q5     2.54 0.962\n## 15 4     q6     5.43 2.59 \n## 16 4     q9     1.86 0.848\n<\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>sumdat %&gt;% \n  pivot_longer(cols = -q10, names_sep = \"_\", names_to = c(\"q\",\"type\")) %&gt;% \n  pivot_wider(id_cols = c(q10,q), names_from = type, values_from = value) %&gt;% \n  mutate( \n    across(\n      \u3000c(mean,sd), \n      \u3000~{scales::comma(., accuracy = 0.02)}\n    )  \n  )\n<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">## # A tibble: 16 \u00d7 4\n##    q10   q     mean  sd   \n##    &lt;fct&gt; &lt;chr&gt; &lt;chr&gt; &lt;chr&gt;\n##  1 1     q2    2.06  1.06 \n##  2 1     q5    2.44  0.86 \n##  3 1     q6    6.34  2.00 \n##  4 1     q9    1.84  0.78 \n##  5 2     q2    2.66  1.08 \n##  6 2     q5    2.56  1.12 \n##  7 2     q6    4.60  2.54 \n##  8 2     q9    2.22  0.94 \n##  9 3     q2    2.70  1.14 \n## 10 3     q5    2.96  1.02 \n## 11 3     q6    4.18  2.66 \n## 12 3     q9    1.88  0.84 \n## 13 4     q2    2.36  1.10 \n## 14 4     q5    2.54  0.96 \n## 15 4     q6    5.42  2.58 \n## 16 4     q9    1.86  0.84\n<\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>sumdat %&gt;% \n  pivot_longer(cols = -q10, names_sep = \"_\", names_to = c(\"q\",\"type\")) %&gt;% \n  pivot_wider(id_cols = c(q10,q), names_from = type, values_from = value) %&gt;% \n  mutate( across(c(mean,sd), ~{scales::comma(., accuracy = 0.02)})  ) %&gt;% \n  mutate(res = str_c(mean,\"(\",sd,\")\")) \n<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">## # A tibble: 16 \u00d7 5\n##    q10   q     mean  sd    res       \n##    &lt;fct&gt; &lt;chr&gt; &lt;chr&gt; &lt;chr&gt; &lt;chr&gt;     \n##  1 1     q2    2.06  1.06  2.06(1.06)\n##  2 1     q5    2.44  0.86  2.44(0.86)\n##  3 1     q6    6.34  2.00  6.34(2.00)\n##  4 1     q9    1.84  0.78  1.84(0.78)\n##  5 2     q2    2.66  1.08  2.66(1.08)\n##  6 2     q5    2.56  1.12  2.56(1.12)\n##  7 2     q6    4.60  2.54  4.60(2.54)\n##  8 2     q9    2.22  0.94  2.22(0.94)\n##  9 3     q2    2.70  1.14  2.70(1.14)\n## 10 3     q5    2.96  1.02  2.96(1.02)\n## 11 3     q6    4.18  2.66  4.18(2.66)\n## 12 3     q9    1.88  0.84  1.88(0.84)\n## 13 4     q2    2.36  1.10  2.36(1.10)\n## 14 4     q5    2.54  0.96  2.54(0.96)\n## 15 4     q6    5.42  2.58  5.42(2.58)\n## 16 4     q9    1.86  0.84  1.86(0.84)\n<\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>sumdat %&gt;% \n  pivot_longer(cols = -q10, names_sep = \"_\", names_to = c(\"q\",\"type\")) %&gt;% \n  pivot_wider(id_cols = c(q10,q), names_from = type, values_from = value) %&gt;% \n  mutate( across(c(mean,sd), ~{scales::comma(., accuracy = 0.02)})  ) %&gt;% \n  mutate(res = str_c(mean,\"(\",sd,\")\")) %&gt;% \n  select(q10, q, res) \n<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">## # A tibble: 16 \u00d7 3\n##    q10   q     res       \n##    &lt;fct&gt; &lt;chr&gt; &lt;chr&gt;     \n##  1 1     q2    2.06(1.06)\n##  2 1     q5    2.44(0.86)\n##  3 1     q6    6.34(2.00)\n##  4 1     q9    1.84(0.78)\n##  5 2     q2    2.66(1.08)\n##  6 2     q5    2.56(1.12)\n##  7 2     q6    4.60(2.54)\n##  8 2     q9    2.22(0.94)\n##  9 3     q2    2.70(1.14)\n## 10 3     q5    2.96(1.02)\n## 11 3     q6    4.18(2.66)\n## 12 3     q9    1.88(0.84)\n## 13 4     q2    2.36(1.10)\n## 14 4     q5    2.54(0.96)\n## 15 4     q6    5.42(2.58)\n## 16 4     q9    1.86(0.84)\n<\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>sumdat %&gt;% \n  pivot_longer(cols = -q10, names_sep = \"_\", names_to = c(\"q\",\"type\")) %&gt;% \n  pivot_wider(id_cols = c(q10,q), names_from = type, values_from = value) %&gt;% \n  mutate( across(c(mean,sd), ~{scales::comma(., accuracy = 0.02)})  ) %&gt;% \n  mutate(res = str_c(mean,\"(\",sd,\")\")) %&gt;% \n  select(q10, q, res) %&gt;% \n  pivot_wider(\n    id_cols = q10, \n    names_from = q, \n    values_from = res\n  )\n<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">## # A tibble: 4 \u00d7 5\n##   q10   q2         q5         q6         q9        \n##   &lt;fct&gt; &lt;chr&gt;      &lt;chr&gt;      &lt;chr&gt;      &lt;chr&gt;     \n## 1 1     2.06(1.06) 2.44(0.86) 6.34(2.00) 1.84(0.78)\n## 2 2     2.66(1.08) 2.56(1.12) 4.60(2.54) 2.22(0.94)\n## 3 3     2.70(1.14) 2.96(1.02) 4.18(2.66) 1.88(0.84)\n## 4 4     2.36(1.10) 2.54(0.96) 5.42(2.58) 1.86(0.84)\n<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>\u3060\u3044\u3076\u4e45\u3057\u3076\u308a\u306bR\u306e\u95a2\u6570\u306b\u3064\u3044\u3066\u306e\u8a18\u4e8b\u3092\u66f8\u304d\u307e\u3059\u304c\u3001\u4eca\u65e5\u306f\u3001\u30a2\u30c3\u30d7\u30c7\u30fc\u30c8\u3057\u306a\u3044\u3068\u3044\u3051\u306a\u3044\u306a\u3068\u9577\u3089\u304f\u601d\u3063\u3066\u3044\u305facross\u95a2\u6570\u306e\u8a18\u4e8b\u306b\u306a\u308a\u307e\u3059\u3002 \u30dd\u30a4\u30f3\u30c8\u3068\u3057\u3066\u306f\u3001 \u3068\u306a\u308a\u307e\u3059\u3002\uff08\u3068\u304f\u306b\u3001\u79c1\u306e\u30b3\u30fc\u30b9\u306e\u96c6\u8a08\u90e8\u5206\u3067\u89e3\u8aac\u3057\u3066\u3044\u305f\u5185\u5bb9\u304c\u300c\u53e4\u3044\u5185\u5bb9\u300d\u3068\u306a\u3063\u3066\u3057\u307e\u3063\u3066\u3044\u308b\u305f\u3081\u3001\u672c\u8a18\u4e8b\u3067\u88dc\u5b8c\u3044\u305f\u3060\u3051\u307e\u3059\u3068\u5e78\u3044\u3067\u3059\u3002\uff08\u5c1a\u3001mutate_at\u306e\u4f7f\u3044\u65b9\u304c\u7406\u89e3\u3067\u304d\u3066\u3044\u308c\u3070\u3001across\u306e\u7406\u89e3\u306f\u307b\u307c\u7d42\u308f\u3063\u3066\u3044\u308b\u3068\u8003\u3048\u3066\u3044\u305f\u3060\u3044\u3066\u5927\u4e08\u592b\u3067\u3059\u3002\uff09 across\u95a2\u6570\u3068\u306f\u306a\u306b\u304b across\u95a2\u6570\u306f\u3001{dplyr}\u306ever1.0.0\u304b\u3089\u5b9f\u88c5\u3055\u308c\u305f\u6bd4\u8f03\u7684\u65b0\u3057\u3044\u95a2\u6570\u3067\u3059\u3002\u3053\u308c\u307e\u3067\u306edplyr\u306e\u95a2\u6570\u3092\u7f6e\u304d\u63db\u3048\u308b\u6a5f\u80fd\u304c\u3042\u308a\u3001\u307e\u305f\u3001\u4f7f\u3044\u3053\u306a\u305b\u308b\u3068\u304b\u306a\u308a\u4fbf\u5229\u306a\u306e\u3067\u7d39\u4ecb\u3057\u307e\u3059\u3002 \u5c1a\u3001\u672c\u5bb6\u306e\u89e3\u8aac\uff08\u82f1\u8a9e\uff09\u304c\u8aad\u3081\u308b\u65b9\u306f\u305d\u3063\u3061\u3092\u8aad\u3093\u3067\u3044\u305f\u3060\u304f\u65b9\u304c\u826f\u3044\u304b\u3082\u3057\u308c\u307e\u305b\u3093\uff08\u6c57 \u672c\u8a18\u4e8b\u3067\u306f\u3001\u5b9f\u969b\u306b\u67b6\u7a7a\u306e\u30a2\u30f3\u30b1\u30fc\u30c8\u30c7\u30fc\u30bf\u304c\u624b\u5143\u306b\u3042\u308b\u3068\u3057\u3066\u305d\u306e\u30af\u30ea\u30fc\u30cb\u30f3\u30b0\u3092\u884c\u3046\u65b9\u6cd5\u3067\u89e3\u8aac\u3057\u3066\u3044\u304d\u307e\u3059\u3002 \u67b6\u7a7a\u306e\u30c7\u30fc\u30bf \u3064\u304e\u306e\u3088\u3046\u306a\u30a2\u30f3\u30b1\u30fc\u30c8\u30c7\u30fc\u30bf\u304c\u3042\u308b\u3068\u3057\u307e\u3057\u3087\u3046\u3002 ## # A tibble: 100 \u00d7 10 ## q1_cat q2_num q3_cat q4_cat q5_num q6_num q7_cat q8_cat ## &lt;dbl&gt; &lt;chr&gt; &lt;dbl&gt; &lt;dbl&gt; &lt;int&gt; &lt;chr&gt; &lt;chr&gt; &lt;int&gt; ## 1 2 2 3 2 3 7 1 1 ## 2 2 1 2 2 1 7 1 5 ## 3 1 4 3 2 3 8 2 4 ## 4 3 3 4 2 3 5 1 3 ## 5 1 4 3 2 4 6 2 4 ## 6 1 4 5 1 3 1 1 6 ## 7 2 3 1 2 2 6 2 1 ## 8 2 2 3 2 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"swell_btn_cv_data":"","footnotes":""},"categories":[7],"tags":[18,17],"class_list":["post-177","post","type-post","status-publish","format-standard","hentry","category-7","tag-across","tag-purrr"],"_links":{"self":[{"href":"https:\/\/bunseki-data.com\/r-onlinecourse\/wp-json\/wp\/v2\/posts\/177","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/bunseki-data.com\/r-onlinecourse\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/bunseki-data.com\/r-onlinecourse\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/bunseki-data.com\/r-onlinecourse\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/bunseki-data.com\/r-onlinecourse\/wp-json\/wp\/v2\/comments?post=177"}],"version-history":[{"count":2,"href":"https:\/\/bunseki-data.com\/r-onlinecourse\/wp-json\/wp\/v2\/posts\/177\/revisions"}],"predecessor-version":[{"id":185,"href":"https:\/\/bunseki-data.com\/r-onlinecourse\/wp-json\/wp\/v2\/posts\/177\/revisions\/185"}],"wp:attachment":[{"href":"https:\/\/bunseki-data.com\/r-onlinecourse\/wp-json\/wp\/v2\/media?parent=177"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/bunseki-data.com\/r-onlinecourse\/wp-json\/wp\/v2\/categories?post=177"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/bunseki-data.com\/r-onlinecourse\/wp-json\/wp\/v2\/tags?post=177"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}