2016-10-21 4 views
1

サブセット関数を使用して、記号*または+を含むデータフレームの特定の行を選択しようとしています。私は自分のデータフレームのこれらの行全体を新しいデータフレームに入れたいと思います。私はサブセットがこれを行うための最善の方法だと思う。以下はサブセット関数を使用してR内の特殊文字を検索する方法

は私の試みです:

nba <- read.csv('nba.csv',header=FALSE) 

nba 
two <- grep('\\Q*\\E',nba$V2) 
one <- grep('\\Q+\\E',nba$V2) 

both <- c(one,two) 

allstar <- subset.data.frame(nba, both) 

誰かが私にアドバイスを与えることができればお願いします。私は何らかの形式的な間違いがあると謝罪します。このウェブサイトで初めてのことです。

ありがとうございます。

注:私はRのスタジオで働いています

+0

なぜ動作していないのですが、動作させる方法はありますか?サンプルコードは理想的でしょう。すなわちallstar <-subset.data.frame(nba、....) – Robert

+0

ようこそ。まず最初に、良い質問をする方法について[here](http://stackoverflow.com/help/how-to-ask)を読んでください。良い質問には改善のための改善があり、助けを受けることができます。一方、[this](http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example)の読者も良いです。 R.で再現可能な例を作成する方法を説明します。これまでに試したことや、あなたのデータに必要な出力を提供することによって、ユーザーを支援します。 – SabDeM

答えて

0

subsetsubset引数の論理値をとります。

two <- grepl('\\Q*\\E',nba$V2) 
one <- grepl('\\Q+\\E',nba$V2) 

both <- one | two ## logical "or" operation 

allstar <- subset.data.frame(nba, both) 

注、twoonebothは長nrow(nba)を有する:代わりgrepl( "論理" の "L")を使用します。

+0

ありがとう – Robert

関連する問題