gpt4 book ai didi

r - 从字符和数字的数据框中子集字符列

转载 作者:行者123 更新时间:2023-12-04 11:09:08 25 4
gpt4 key购买 nike

我有一个由数字和非数字列组成的数据框。

我只想提取(子集)非数字列,因此要提取字符列。虽然我可以使用字符串sub_num = x[sapply(x, is.numeric)]来对数字列进行子集化,但不能使用is.character形式进行相反的操作。谁能帮我?

最佳答案

好吧,我做了一个简短的尝试。

我可以确认以下代码段是否正常工作:

str(d)
'data.frame': 5 obs. of 3 variables:
$ a: int 1 2 3 4 5
$ b: chr "a" "a" "a" "a" ...
$ c: Factor w/ 1 level "b": 1 1 1 1 1


# Get all character columns
d[, sapply(d, class) == 'character']

# Or, for factors, which might be likely:
d[, sapply(d, class) == 'factor']

# If you want to get both factors and characters use
d[, sapply(d, class) %in% c('character', 'factor')]


使用正确的类,您的 sapply方法应该也可以正常工作,至少只要在 ,函数之前插入缺少的 sapply

如果您有不属于组 !is.numeric的类,则使用 numeric, factor, character的方法无法很好地扩展(例如,我经常使用的一个是 POSIXct

关于r - 从字符和数字的数据框中子集字符列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10564781/

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