2017-01-10 2 views
0

で始まるテキストファイルから行を削除します。テキストマイニング - 私は次のようにRにテキストファイルを読んでいるキーワード

test<-readLines("D:/AAPL MSFT Earnings Calls/Test/Test.txt") 

このファイルは、PDFから変換し、私がしたいいくつかのヘッダデータを保持しました。 〜を取り除くために。彼らは「ページ」、「マーケットキャップ」などの言葉で始まります。

TXTファイルでこれらのキーワードを含むすべての行を削除するにはどうすればよいですか?これは、その単語を含む行を削除するのとは対照的です。私はここで

setwd("C:/Users/George/Google Drive/PhD/Strategic agility/Source Data/Peripherals Earnings Calls 2016") 
text1<-readLines("test.txt") 
text 

library(purrr) 
library(stringr) 
text1 <- "foo 
Page, bar 
baz 
Market Cap, qux" 
text1 <- readLines(con = textConnection(file)) 
ignore_patterns <- c("^Page,", "^Market\\s+Cap,") 
text1 %>% discard(~ any(str_detect(.x, ignore_patterns))) 

text1 

で読むためにビットを変更し、以下の答えのいずれかを使用して


は、私が手に出力されます:

> text1 
[1] "foo"    "Page, bar"  "baz"    "Market Cap, qux" 

のfoo/bazに/ qux何ですか文字?

+2

'grepl( "^(ページ|時価総額)"、DFの$ idは)'行のサブセットに使用します。あなたのキーワードに置き換えてください。あなたの最初の列で 'id'を入力してください –

答えて

1
# once you have read and stored in a data.frame 
# perform below subsetting : 
x = grepl("^(Page|Market Cap)", df$id) # where df is you data.frame and 'id' is your 
             # column name that has those unwanted keywords 
df <- df[!x,] # does the job! 

^がスタートをチェックするのに役立ちます、ありがとうございました。だから、行がPageまたは(|)のいずれかで始まる場合Market Capその後、greplリターンTRUE

+0

の出力を確認してください遅れて申し訳ありません。テキストファイルをデータフレームに変換するのに役立つソースを参照できますか?テキストファイルは構造化されていないコールトランスクリプトです。これは良い解決策のようですが、私は救済訓練が必要なRルーキーです!ありがとうございます。 –

+0

Rコンソールで '?read.table'の詳細については' read.table'を使用してください@GeorgeM –

+0

ねえ@GeorgeM希望あなたの実際のデータでそれを正しく得ました! –

0
library(purrr) 
library(stringr) 
file <- "foo 
Page, bar 
baz 
Market Cap, qux" 
test <- readLines(con = textConnection(file)) 
ignore_patterns <- c("^Page,", "^Market\\s+Cap,") 
test %>% discard(~ any(str_detect(.x, ignore_patterns))) 
+0

私は何か間違っていると思います。私のコード/出力が上部に貼り付けられています。理想的には、結果を印刷するときに、ページとマーケットキャップを含む行が削除されたテキストファイルが基本的に表示されるはずです。あなたの忍耐をありがとう、私はこれで(新しい)私は明らかです。 –

+0

'install.packages(c(" purrr "、" stringr "))'で 'purrr'と' stringr'を最初にインストールしましたか? ( 'install.packages(...' –

関連する問題