r - 如何使数据框的某些部分百分比?
问题描述
这是我的名为 cat_data 的数据框
打印(cat_data)
Metrics 2016 2017 2018
Number of Cats 100 120 150
Number Leaving 32 40 65
Number Staying 68 80 85
Percent of Leavers .32 .33 .43
Percent of Stayers .68 .67 .57
我只想将行和 5 转换为带有百分比符号的百分比。
这是我想要的输出。
Metrics 2016 2017 2018
Number of Cats 100 120 150
Number Leaving 32 40 65
Number Staying 68 80 85
Percent of Leavers 32% 33% 43%
Percent of Stayers 68% 67% 57%
我试过这个,但我无法让它工作。
cat_data[4:5,2:4] <- paste0(cat_data[4:5,2:4] * 100,%)
谁能告诉我我需要修复什么?谢谢你。
解决方案
这也应该有效
编辑
粘贴函数需要一个向量作为输入,但您的输入cat_data[4:5,2:4]
是一个数据框。
该apply
函数将数组作为输入并输出一个向量。
cat_data[4:5,2:4] <- apply(cat_data[4:5,2:4]*100, 2, function(x) paste0(x, "%"))
您将数据框的区域乘以 100。这将是您在apply
函数中的数组输入。通过指示margin = 2
向量化是按列执行的。然后你提供应用于向量的函数,在这种情况下是paste
具有你想要的%
字符的函数。
推荐阅读
- javascript - 从 CSV 转换为 JSON 时如何从字符串更改为整数?
- c - 如何找到待处理的传入 UDP 数据包的数量?(网络相关)
- dataframe - 使用单个函数执行多个操作
- python - 从树数据结构中提取所有链
- javascript - 如何在打开modelDialog之前验证表单
- vba - 计算一个值在列中出现的次数并将该值返回到不同的工作表
- http - 如何在 Apollo GraphQl 中传递多个标头
- c# - 如何将此表达式转换为 LINQ
- javascript - toDoList 和搜索添加的项目后的问题,当输入为空时应该回到上一个索引位置
- powershell - 使用 Powershell 枚举 Azure 存储帐户