簡體   English   中英

如何刪除數據框一欄中的部分名稱?

[英]how can I remove part of a names in one column of a data frame?

我有一個數據看起來像這樣

v1                                         v2
phenzine.MO.4213121906560.C02.name  2.376140e-05
dnium.bte.MO.02400072107987.E10.name    2.423254e-05
trene.MO.024213121906564.C09.name       2.438986e-05
tilli.MO.550760072207033.F09.name       2.495574e-05
tnolone.MO..614615111406.name           2.511859e-05

我想刪除第一列的一部分,然后它將如下所示

      v1              v2
    phenzine    2.376140e-05
    dnium.bte   2.423254e-05
    trene       2.438986e-05
    tilli       2.495574e-05
    tnolone     2.511859e-05

我知道我必須使用grep或sub,但是我做不到

如果所有元素都共用“ MO”,則可以嘗試以下正則表達式

 df1$v1 <- sub('\\.MO.*', '', df1$v1)

假設您要從中刪除字符串. 其次是大寫字母

 sub('\\.[A-Z].*', '', df1$v1)
 #[1] "phenzine"  "dnium.bte" "trene"     "tilli"     "tnolone"  

還是更具體

sub('\\.(MO|NO|NR).*', '', df1$v1)
#[1] "phenzine"  "dnium.bte" "trene"     "tilli"     "tnolone"  

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM