5

Вопрос по r – Выбор строк в data.frame на основе символьных строк

Яdata.frame сrow.names как в тесте.

test <-
c("Env_1990:trait_KPS", "Env_1990:trait_SPSM", "Env_1990:trait_TKW",
"Env_1990:trait_Yield", "Env_1991:trait_KPS", "Env_1991:trait_SPSM",
"Env_1991:trait_TKW", "Env_1991:trait_Yield", "Env_1992:trait_KPS",
"Env_1992:trait_SPSM", "Env_1992:trait_TKW", "Env_1992:trait_Yield",
"Env_1993:trait_KPS", "Env_1993:trait_SPSM", "Env_1993:trait_TKW",
"Env_1993:trait_Yield", "Env_1994:trait_KPS", "Env_1994:trait_SPSM",
"Env_1994:trait_TKW", "Env_1994:trait_Yield", "Env_1995:trait_KPS",
"Env_1995:trait_SPSM", "Env_1995:trait_TKW", "Env_1995:trait_Yield",
"Gen_B88:Env_1990:trait_KPS", "Gen_B88:Env_1990:trait_SPSM",
"Gen_B88:Env_1990:trait_TKW", "Gen_B88:Env_1990:trait_Yield",
"Gen_B88:Env_1991:trait_KPS", "Gen_B88:Env_1991:trait_SPSM",
"Gen_B88:Env_1991:trait_TKW", "Gen_B88:Env_1991:trait_Yield",
"Gen_B88:Env_1992:trait_KPS", "Gen_B88:Env_1992:trait_SPSM",
"Gen_B88:Env_1992:trait_TKW", "Gen_B88:Env_1992:trait_Yield",
"Gen_B88:Env_1993:trait_KPS", "Gen_B88:Env_1993:trait_SPSM",
"Gen_B88:Env_1993:trait_TKW", "Gen_B88:Env_1993:trait_Yield")

Я хочу выбрать только те строки, которые начинаются сEnv_, Я пробовал этот код вR

grep(pattern="[Env_]", x=test).

Этот код дает мне все строки, потому чтоEnv_ появляется в каждом имени строки. Интересно, как выбрать строки, которые начинаются только сEnv_, Заранее спасибо за помощь.

  • Error: User Rate Limit Exceeded

    от
  • Error: User Rate Limit Exceeded

    от MYaseen208
  • [Env_] это класс символов. Это соответствует любой строке, которая содержит любой из отдельных символов E, n, v или _.

    от Matthew Lundberg
  • 14

    Вы хотите добавить

    ^ персонаж дляbeginning of line/string:

    > grep("^Env_", test)
     [1]  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
    > grep("^Env_", test, value = TRUE)
     [1] "Env_1990:trait_KPS"   "Env_1990:trait_SPSM"  "Env_1990:trait_TKW"  
     [4] "Env_1990:trait_Yield" "Env_1991:trait_KPS"   "Env_1991:trait_SPSM" 
     [7] "Env_1991:trait_TKW"   "Env_1991:trait_Yield" "Env_1992:trait_KPS"  
    [10] "Env_1992:trait_SPSM"  "Env_1992:trait_TKW"   "Env_1992:trait_Yield"
    [13] "Env_1993:trait_KPS"   "Env_1993:trait_SPSM"  "Env_1993:trait_TKW"  
    [16] "Env_1993:trait_Yield" "Env_1994:trait_KPS"   "Env_1994:trait_SPSM" 
    [19] "Env_1994:trait_TKW"   "Env_1994:trait_Yield" "Env_1995:trait_KPS"  
    [22] "Env_1995:trait_SPSM"  "Env_1995:trait_TKW"   "Env_1995:trait_Yield"