r - 更改 R 中的一种单元格数据类型
问题描述
假设我有数据框,其中第三列由df$pct <- percent(df$pct)
.
样本:
df <- structure(list(Jan = c(1.52, 582.58), Feb = c(5.97, 312.94)), class = "data.frame", row.names = c(NA,
-2L))
代码:
df$pct <- df[, 2]/df[, 1] - 1
df <- df %>%
# mutate_if(is.numeric, ~round(., 2))
mutate_at(vars(Jan, Feb), funs(round(., 2))) %>%
mutate_at(vars(pct), funs(round(., 4)))
df$pct <- percent(df$pct)
出去:
现在我想用计算的值替换红色圆圈中的单元格5.97 - 1.52
,所以我使用df[1, 3] <- (df[1, 2] - df[1, 1])
,是否可以将其更改为4.45
而不是292.76%
?
所需的输出:
解决方案
df = data.frame(pct = c(4.45, -0.4628))
df$pct <- ifelse(df$pct > 1, df$pct, scales::percent(df$pct)) # this makes pct to be a character vector though
推荐阅读
- python - 如何以python列表或numpy数组的形式形成邻接表?
- javascript - 在 TypeScript 中处理类型更改的副作用
- python - 如何按列和按行标准化我的数组在 0 和 1 之间
- python-3.x - 使用 python 脚本和 boto3 创建 MSK 主题
- reactjs - React Native:空引用上的'android.bluetooth.bluetoothadapter.isEnabled()'
- python - selenium python中anticaptcha插件的问题
- excel - 从python中的一张excel文件中查找列的不同值
- python - 在 Pandas 数据框中按其他列分组的列中删除频率最低的行
- python - Tweepy,如何正确格式化输出到 csv 文件?
- postgresql - 用于 JDBC 的多个数据库连接,用于 Quartz?