r - 如何pivot_longer 变量名称中包含整数和变量的数据框?
问题描述
解决了。找到了解决我的问题的方法。
我有一个包含几个变量的数据框,每轮记录一次每个参与者。变量的存储方式如下:
# A tibble: 60 x 15
slider_puzzle.1~ slider_puzzle.1~ slider_puzzle.1~ slider_puzzle.2~ slider_puzzle.2~
<int> <lgl> <dbl> <int> <lgl>
1 50 NA 25 50 NA
2 60 NA 25 80 NA
3 65 NA 25 60 NA
4 80 NA 25 65 NA
5 70 NA 25 70 NA
6 65 NA 25 70 NA
7 50 NA 25 50 NA
8 50 NA 25 50 NA
9 50 NA 25 50 NA
10 50 NA 25 60 NA
# ... with 50 more rows, and 10 more variables: slider_puzzle.2.player.payoff <dbl>,
# slider_puzzle.3.player.claim <int>, slider_puzzle.3.player.gender <lgl>,
# slider_puzzle.3.player.payoff <dbl>, slider_puzzle.4.player.claim <int>,
# slider_puzzle.4.player.gender <lgl>, slider_puzzle.4.player.payoff <dbl>,
# slider_puzzle.5.player.claim <int>, slider_puzzle.5.player.gender <chr>,
# slider_puzzle.5.player.payoff <dbl>
我想旋转更长的时间,以便每个变量(player.claim、player.payoff、player.gender、...)都有一行,一行表示参与者,一行表示轮数(“slider.claim”后面的数字。谜。”)。
我尝试了以下方法:
cc = cc %>%
pivot_longer(
cols =
starts_with('slider_puzzle'),
names_to = c('round', '.value'),
names_pattern = 'slider_puzzle.(.).(.)'
)
但它不起作用。我不确定如何指定 names_pattern。任何帮助,将不胜感激!
解决方案
它适用于以下 names_pattern:
cc = cc %>%
pivot_longer(
cols =
starts_with('slider_puzzle'),
names_to = c('round', '.value'),
names_pattern = 'slider_puzzle.?(.).(.*)',
)
推荐阅读
- javascript - Html 图像源来自按比例缩小的原始图像
- java - 如何在java中用问号、点和感叹号分割字符串
- sprite-kit - 在 SpriteKit iOS 11.3.x 中,SKLabelNode 不渲染 £(英镑)货币
- mysql - 如何根据其他 2 个表的条件从一个表中检索数据?
- regex - perl:如何仅在文本文件中计算第二列中连续两个数字的差异
- json - 如何获取包含特定值的 JSON 节点?
- android-constraintlayout - ConstraintLayout 1.1.0 视图不能在同一条边上相互引用?
- .net - 通过 TextFieldParser 类收集行偏移量(以字节为单位)
- react-native - sayem 登录中的“开发者名称”是什么?
- apache-kafka - 代理列表和引导服务器有什么区别?