[英]apply functions in R for comparing columns
我有一個名為df
的數據df
。 我想檢查每個文檔的xcoordinate 和 ycoordinate是否相同。
doc <- c("doc1", "doc2", "doc3")
xcor <- c(3,4,5,3,4,5,3,4,4)
ycor <- c(2,6,8,2,6,8,2,6,8)
df <- data.frame(doc,xcor,ycor)
df
doc xcor ycor
doc1 3 2
doc2 4 6
doc3 5 8
doc1 3 2
doc2 4 6
doc3 5 8
doc1 3 2
doc2 4 6
doc3 4 8
我現在正在為所有應用功能苦苦掙扎,但這並不會導致期望的結果。
哪一個
doc1 TRUE
doc2 TRUE
doc3 FALSE
我認為您不需要apply
功能。 在消除重復的行之后,我們可以計算重復文檔的數量:
table(df[!duplicated(df),]$doc) == 1
doc1 doc2 doc3
TRUE TRUE FALSE
或更短(@DavidArenburg):
table(unique(df)$doc) == 1
好了,您仍然可以使用lapply
實現它:
unlist(lapply(lapply(lapply(split(df, doc), unique), nrow), `==`, 1))
看起來有點凌亂,但可以。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.