R获取列数据类型

R获取列数据类型,r,class,alphanumeric,R,Class,Alphanumeric,我正在使用sappy和class命令的组合,如下所示,以了解data.frame的每列中的数据类型。但我想让class命令忽略那些根本没有任何alphanumeric字符的单元格。例如,我的薪水列大部分是数字,我希望class命令忽略,然后打印答案 我怎样才能达到同样的效果 salary1 <- c(21000, 1, 26800) salary <- c(21000, "-", 26800) em <- data.frame(salary1, salary) sapply

我正在使用sappy和class命令的组合,如下所示,以了解data.frame的每列中的数据类型。但我想让class命令忽略那些根本没有任何alphanumeric字符的单元格。例如,我的薪水列大部分是数字,我希望class命令忽略,然后打印答案

我怎样才能达到同样的效果

salary1 <- c(21000, 1, 26800)
salary <- c(21000, "-", 26800)

em <- data.frame(salary1, salary)
sapply (em, class)
---更新1-----

我添加了两行代码,如下所示。我希望salary3的类是数字的,但R说它是字符。有办法吗

salary3<-salary[salary!="-"]
class(salary3)

即使你删除了标点符号,你也不会失去这门课。在最好的情况下,您将使用字符类而不是因子,例如使用gsub,R如何知道它是一个数字列?如果R完全忽略,则它是一个数字列,因为只有剩余的值是21000和26800。这就是我在《薪水》专栏上得到的1不,不是。从你创造薪水的那一刻起,我就理解了你的评论。还有别的办法吗?我也试着把那个专栏复制成另一个。但这并没有解决我的问题……我已经更新了我的问题