-1
我有54個數據幀(stateOrdRank)的列表。我最感興趣的欄目分別是名稱爲「Hospital.nam」,「State」和「rank」的第2,7和47列。該列表由「狀態」索引,因此「狀態」的值在每行中相同。我創建了一個for循環,記錄每個表中的最大排名,如果參數「num」在一定範圍內,我會查看每個表,並將子集中的「Hospital.name」和「State」 rank = num,到數據幀「finalFrame」。範圍是1到列表中每個表的等級的最大值。以下是我無法弄清楚的部分。如果num超出我的範圍(即每個表中的範圍),我想在「Hospital.name」列中將「finalFrame」值設爲NA,但是該表的真實「State」值(即正確的「國家「的價值就像我之前做的那樣)。我該怎麼做呢?以下是我到目前爲止的代碼。在for循環中對if語句中的數據幀執行rbind
finalFrame <- data.frame()
for (i in seq_along(stateOrdRank)) {
maxRank[i] <- max(stateOrdRank[[47]])
if (num <= 1 && num <= maxRank[i]) {
finalFrame <- rbind(finalFrame, subset(stateOrdRank[i], stateOrdRank[[i]] == num, select = c("Hospital.Name", "State"))))
} else {
finalFrame <- rbind(finalFrame,
}
}
這裏的一個樣品看stateOrdRank的拳頭元件的一半,並圍繞所述第二元件的0.25。
$AK
Hospital.Name State rank
115 SOUTH PENINSULA HOSPITAL AK 1
104 YUKON KUSKOKWIM DELTA REG HOSPITAL AK 2
100 MAT-SU REGIONAL MEDICAL CENTER AK 3
114 PEACEHEALTH KETCHIKAN MEDICAL CENTER AK 4
101 BARTLETT REGIONAL HOSPITAL AK 5
105 CENTRAL PENINSULA GENERAL HOSPITAL AK 6
106 ALASKA NATIVE MEDICAL CENTER AK 7
99 PROVIDENCE ALASKA MEDICAL CENTER AK 8
103 ALASKA REGIONAL HOSPITAL AK 9
$AL
Hospital.Name State rank
23 ANDALUSIA REGIONAL HOSPITAL AL 1
15 JACKSON HOSPITAL & CLINIC INC AL 2
19 WEDOWEE HOSPITAL AL 3
44 FLORALA MEMORIAL HOSPITAL AL 4
55 GROVE HILL MEMORIAL HOSPITAL AL 5
82 SPRINGHILL MEDICAL CENTER AL 6
86 BIRMINGHAM VA MEDICAL CENTER AL 7
36 PARKWAY MEDICAL CENTER AL 8
那麼,這是否正確的 「國家」 的價值從何而來?如果沒有代表性的'stateOrdRank'對象包含在這個例子中,很難說這應該如何工作。請閱讀[如何創建一個可重現的例子](http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example)。 – MrFlick 2014-11-02 23:50:23
我添加了一個stateOrdRank的樣本,顯示我正在談論的列。 – uwayor 2014-11-03 00:07:17