配列Rubyで配列の2番目の要素を取得する方法:は、次のように私はセットを持って
tagged_text = [["VB", "go"], ["VBG", "going"]]
私はすべて取得しようとしています:
verb_tag_set = Set.new ["VB", "VBD", "VBG", "VBN", "VBP", "VBZ", "MD"]
マイtagged_text配列は、次のものが含まverb_tag_set内の項目の1つと一致する要素を含む配列を選択することによって、各配列の2行目の要素の値を取得します。
verb_tagged_array = tagged_text.select{|el| el[1] if verb_tag_set.include?(el[0])}
verb_tagged_array.map{|row| row[1]}
これは機能しますが、私は1行で配列を取得できるはずです。
このコードを改善する方法についてのアイデアはありますか?
NOOB(ルビーとNOOB)
あなたの質問はちょっと混乱しています。第1に、Rubyには「行」を持つ配列の概念がありません。また、 'verb_tag_set.include?(el [1])'がある場合は 'verb_tag_set.include?(el [0])'を意味せず、次の行で 'row [1]'にする必要がありますか?あなたが望む出力(配列)を表示するのに役立ちます。 –
謝罪。私は編集をした。実際にtagged_text配列を間違った順序で書きました。それを指摘してくれてありがとう。 – chell