【发布时间】:2019-02-07 11:14:55
【问题描述】:
基本数据是使用 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 可以通过什么方式导入指定数据类型的数据?
提前感谢您的帮助!
【问题讨论】:
-
您能否提供您的数据样本 (
dput(data))? -
可能您使用的是
read.csv,但未指定stringsAsFactors=FALSE -
提供some example data 会有所帮助。几乎可以肯定,您认为是数字的列包含字符,这导致转换为因子,因为未指定
stringsAsFactors = FALSE。 -
我尝试使用
stringsAsFactors = F,但收到以下错误non-numeric argument to binary operator -
再次,将有助于查看用于读取数据的命令。
标签: r type-conversion