1
我想根據行總和來對df
列進行子集劃分。基於行總和的子集列
df
數據框:
NE001 NE002 NE003 NE004
2 0 0 2
我的預期輸出dfo
:
NE001 NE004
2 2
我已經試過dfo <- df[,which(names(df) == colSums(df==2))]
,但不起作用。
有些想法?
我想根據行總和來對df
列進行子集劃分。基於行總和的子集列
df
數據框:
NE001 NE002 NE003 NE004
2 0 0 2
我的預期輸出dfo
:
NE001 NE004
2 2
我已經試過dfo <- df[,which(names(df) == colSums(df==2))]
,但不起作用。
有些想法?
你只是試圖將總和爲2的列子集?如果是這樣,你就近了。這是一個小數據框的例子。
(d <- data.frame(x = c(2, 0), y = c(1, 2), z = c(1, 1)))
# x y z
# 1 2 1 1
# 2 0 2 1
由於colSums(d) == 2
返回一個邏輯向量,我們可以與該子集,並且是TRUE
將返回
colSums(d) == 2
# x y z
# TRUE FALSE TRUE
d[colSums(d) == 2]
# x z
# 1 2 1
# 2 0 1
列我不太跟隨qeustion /邏輯;你正在比較數字和字符串。爲什麼第一和第四列在這裏匹配? –
在這個'df'例子中,我們只有一行。然後到每個柱子的行的總和可以是'0'或'2'。我想對行的總和爲'2'的列進行子集劃分。 – user3091668