首页 > 解决方案 > 是否有一个 R 函数可以在 for 循环中查找列的类别

问题描述

我有一个数据框(df)。我需要在 for 循环中找到每个列名的类。我尝试使用以下代码但无法获得解决方案

> df
  x y g
1 a 2 1
2 a 3 2
3 b 4 1
4 b 5 2

>for(i in colnames(df))
 {
 print(class(df$i)) }

预期输出为

> "factor","integer","integer"

因为 x 的类是一个因子,而其他 2 是整数

标签: r

解决方案


如果你想通过循环来实现,

for(i in colnames(df))
 {
 print(class(df[,i])) 
}

sapply但实际上你可以用as做同样的事情,

saplly(df,class)


推荐阅读