[英]combining vectors in r
我有一個數據集,該數據集在一個樣圖中重復測量。 數據集如下所示
我想提取所有以1(1a,1b,1c)開頭的行。 從這些樣地中測量樣品15次,在每次采樣過程中重復進行三次測量。 因此,最終的data.frame
應該總共包含135個觀測值(3x3x15)。
這是我使用的代碼...
Station1 <- BISC1FeldsParData[BISC1FeldsParData$Plot == c("1a", "1b", "1c"),]
但是,所得的data.frame
僅具有45個觀測值。 好像我丟失了每個圖的每個采樣事件中的重復項。
您必須用%in%
替換==
:
Station1 <- BISC1FeldsParData[BISC1FeldsParData$Plot %in% c("1a", "1b", "1c"), ]
或者我們可以使用grep
:
Station1 <- BISC1FeldsParData[grep("^1", BISC1FeldsParData$Plot), ]
說明:正則表達式字符串"^1"
與以"1"
開頭的條目匹配。
或使用subset
Station1 <- subset(BISC1FeldsParData, Plot %in% c("1a", "1b", "1c"))
或dplyr::filter
Station1 <- dplyr::filter(BISC1FeldsParData, Plot %in% c("1a", "1b", "1c"))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.