私は簡単な問題を抱えています。おそらく正規表現の問題。私は初心者です。例えば1などの文字列ベクトルをご検討ください:str_extract_allを使ってRの最初の2つの単語だけを抽出します。
:現在c(Homo_sapiens, Solenopsis_invicta, Rattus_novaborensis, Candida_albicans)
私は次の関数を使用しています:
species_location<-c('Homo_sapiens_Lausanne_Switzerland', 'Solenopsis_invicta_California_US', 'Rattus_novaborensis_Copenhagen_Denmark', 'Candida_albicans_Crotch_Home')
私がどのように見えるの種のための新しいベクトルで終わると思いました
str_extract_all(species_location,'^(\\S+?)_(\\S+?)_')
しかし、それは私のために設計したものの代わりに最初の3つの単語を返します。なぜ私は理解できません。誰でも助けて説明することができますか?ありがとう
更新: 私のRコンソール(Mac OS 3.0.0、Rapp 1.60)を除いて、上に入力したコードは正常に動作します。私はまだそこに問題があるのか分かっていないが、それは他の人がチェックするのに興味があるかもしれない。ここで画像を追加しようとします。
を使用することができます。あなたのサンプルコードは、実行しているものと一致していますか? – Marius
あなたが肯定的になりたいのであれば、あなたは狂っていません。あなたの怠惰な修飾子で何らかの魔法が起きる可能性があると思われたら、これを試してください: '^([a-zA-Z] +)_([a -zA-Z] +)_ ' – Addison
これは非常に奇妙です!私の側では、毎回最初の3つの言葉が返ってきます。私は({2}を使って)非常に多くの小さな修正を試みました!.. – Scientist