簡體   English   中英

提取數據框中特定類型的列

[英]Extract columns of specific type in data frame

我有一個包含一堆數字和因子列的數據框。 我想要所有非因素列。 有沒有辦法提取它們? 我嘗試了類似的東西

df[class(df)!="factor" ]

但是沒有運氣。

Filter的示例:

df <- data.frame(as.factor(letters), a = runif(26), b=runif(26) )
Filter(Negate(is.factor), df)

輸出:

> Filter(Negate(is.factor), df)
            a          b
1  0.04942200 0.85160817
2  0.96370499 0.77911640
3  0.66545208 0.33037229
4  0.19736620 0.54797165
5  0.15264687 0.72744035
6  0.86426399 0.88491690
...
...

從技術上講,數據框是一個列表,因此您可能希望將class()應用於該列表的每個元素(即,應用於每一列):

df[lapply(df,class)!="factor" ]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM