我有 2 個資料幀,我想計算第二個資料幀中列的 a 出現在第一個資料幀的相應行中的次數:
> head(design)
undIssue feelConf setup undContex undChang check
1 5 5 5 5 5 0
2 4 5 5 5 5 0
3 3 5 5 5 5 0
4 2 5 5 5 5 0
5 1 5 5 5 5 0
6 5 4 5 5 5 0
> head(actconjoint)
undIssue feelConf setup undContex undChang
3 5 4 5 5 5
4 5 4 5 5 5
5 5 5 5 5 5
6 5 4 4 5 4
7 5 4 5 3 5
8 3 5 4 5 4
檢查必須收到我在設計中的actconjoint 處找到模式的次數。
因此,在這種情況下,設計時的第 6 行必須接收 2,因為它在 actconjoint 中出現了兩次。
我試過:
design$check <- 0
design$check <-
apply(design, 1, function(x)
ifelse(any(x[1] == actconjoint$undIssue & x[2] == actconjoint$feelConf & x[3] == actconjoint$setup & x[4] == actconjoint$undContex & x[5] == actconjoint$undChang), design$check<-design$check 1,design$check))
但我最好的辦法就是在檢查欄中輸入“1”!
uj5u.com熱心網友回復:
您可以為兩個資料幀創建一個唯一的鍵,并計算每個在另一個資料幀中出現的次數。
key1 <- do.call(paste, design[names(actconjoint)])
key2 <- do.call(paste, actconjoint)
design$check <- sapply(key1, function(x) sum(x == key2))
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/334013.html
上一篇:官方PHP:ApacheDockerImage-讓MySql插件作業
下一篇:需要根據重量百分比來計算成本
