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

5

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

<code>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")
</code>

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

<code>grep(pattern="[Env_]", x=test).
</code>

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

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

Ваш Ответ

1   ответ
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"
Error: User Rate Limit Exceeded
Error: User Rate Limit Exceeded MYaseen208

Похожие вопросы