r - 仅选择 R 中数据框的数值变量
问题描述
我知道这个问题很简单,但我有一个更具体的问题:
我有一个数据框,有 50 个变量(数字和非数字)和 5000 个观察值。
现在我要做的是创建另一个数据框,其中仅包含原始数据框的数值变量。
在这个网站上,我找到了我的问题的解决方案,即:
numeric_variables<-unlist(lapply(original_data,is.numeric))
X<-original_data[numeric_variables]
但我想知道:为什么如果我这样尝试,它反而不起作用?怎么了?
numeric_variables2<-apply(original_data,2,is.numeric)
x<-original_data[numeric_variables2]
解决方案
尝试这个 :
names_num <- names(which(sapply(df, is.numeric)))
df_num <- df[, names_num]