gpt4 book ai didi

R - 仅选择数据框的因子列

转载 作者:行者123 更新时间:2023-12-05 00:16:00 25 4
gpt4 key购买 nike

我试图从我的数据框中只选择因子列。示例如下:

bank[,apply(bank[,names(bank)!="id"], is.factor)]

但是代码的行为很奇怪。一步步:
sapply(bank[,names(bank)!="id"], is.factor)

我得到:
age         sex      region      income     married    children         car 
FALSE TRUE TRUE FALSE TRUE FALSE TRUE
save_act current_act mortgage pep ageBin
TRUE TRUE TRUE TRUE TRUE

看起来不错。现在,我假设我只是将这个 TRUE/FALSE 矩阵传递给下一步,并且只得到我需要的列:
bank[,sapply(bank[,names(bank)!="id"], is.factor)]

但结果我得到了与原始银行数据框中相同的列。什么都没有过滤掉。我以一种或另一种方式尝试过,但找不到解决方案。关于我做错了什么的任何建议?

最佳答案

#DATA
df = mtcars
colnames(df) = gsub("mpg","id",colnames(df))
df$am = as.factor(df$am)
df$gear = as.factor(df$gear)
df$id = as.factor(df$id)

#Filter out 'id' after selecting factors
df[,sapply(df, is.factor) & colnames(df) != "id"]

关于R - 仅选择数据框的因子列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43147960/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com