基本数据是使用SQL查询生成的,其目的是在R中处理数据。但是,尽管从.csv
或.xlsx
导入,R仍将数字作为字符导入,尽管更改了内置import
工具中的数据类型。此外,在执行基本算术运算时,遇到以下错误:
In Ops.factor((data$A), (data$B)) :‘/’ not meaningful for factors
有解决此问题的简单方法吗?
str()
函数分析了数据集,该函数显示R将特定列导入为factors
。 varhandle
和函数unfactor
来取消数据分解as.numeric
用于某些列,其读为characters
而不是factors
在导入之前尝试在Excel中更改数据类型
data$A <- unfactor(data$A)
data$B <- unfactor(data$B)
data$PERCENTAGE <- (data$B)/(data$A)*100
R可以按照指定的数据类型导入数据吗?
谢谢您的帮助!
答案 0 :(得分:2)
对于csv文件,我建议使用Hadley Wickham出色的read_csv中的Tidyverse package。它具有智能的默认值,可以应付我要处理的大多数事情。
对于.xlsx,还有read_excel,也来自Tidyverse软件包(还有其他可用软件包)。 或者,也可以从Excel内导出.csv并使用read_csv。
[请注意,Tidyverse会将这些文件导入为“ tibble”,这本质上是类固醇的数据框架,没有一些麻烦,但如果愿意,可以轻松转换为data.frame。]