r - R数据框将字符串转换为数字
问题描述
我对 R 很陌生,提前为我的无知道歉。
我已经使用 read_csv 将这个 csv 文件加载到“df”dataframe
并寻找绘图,并正确分配了行名和列名。
a b c d ...
x 0.5% 2.5% 16.3% 6.3% ...
y 1.5% 0.5% 1.3% 6.3% ...
z 0.5% 8.5% 16.3% 1.3% ...
.
.
我在将“52.26%”值转换为双倍以进行绘图时遇到问题。
我可以使用逐列转换它们
aNum = as.numeric(sub("%", "", df$a))
但是它不适用于整个框架。
allNum= as.numeric(sub("%", "", df))
任何帮助深表感谢 !
解决方案
就像 Mike H. 说的那样,as.numeric
将接受一个向量(它有一个单一的类型,比如string
或int
其他),但它不会接受一个数据框(其中可能有多种不同类型的变量)。该库tidyverse
有一些非常好的工具可以有效地通过数据框,它还为您提供了处理百分比的函数。
library(tidyverse)
df %>%
mutate_all(.funs = readr::parse_number)
推荐阅读
- r - 是否可以通过指定将 D 移动到 B 和 C 之间来重新排序数据框中的列,以便将 ABCDE 重新排序为 ABDCE?
- c++ - 大 k 上的 Josephus 数列
- ms-access - 访问数据库查询所有行问题/问题的相同值
- r - R过滤没有列的时间序列索引
- react-native - 如何在 react-native 中使用 Jest & Enzyme 测试 rc-field-form Field
- java - 为什么 Java / Apache HttpClient 使用与我的浏览器不同(且已过期)的 X509 根证书?
- excel - Excel VBA根据单元格值停止msgbox显示循环
- javascript - 无法在反应中存储到localStorage
- python - 在 manim 中,如何将轴标签的文本设置为与轴单位不同?
- php - 目标类 [Database\Seeders\UsersTableSeeder] 不存在