分析を行いたい恐ろしい形式のログ ファイル (作成方法を変更することはできません) があります。
ログ ファイルの特定の行に一致する正規表現があります。これらの行には、分析の前に抽出してマトリックスに入れたいデータのビット (文字列と数値、RegEx の一致するグループによって捕捉される) が含まれています。
これを達成するための最良の方法は何ですか?gsub
たぶん機能を使用していますか?(私はRに非常に慣れていません)
を編集して、コメントに対処します。
ログファイルの内容を投稿することはできませんが、必要なものの例を挙げることができます:
私のログファイルは次のようになります。
....
[Node_1] sometext [Ref:1111111, Strategy:4] Initialise Class1
[Node_1] sometext [Ref:1111111, Strategy:4] Initialise Class1 - 3432ms
some non relevant text
more non relevant text
[Node_4] sometext [Ref:1133311, Strategy:5] Run Class76
[Node_4] sometext [Ref:1133311, Strategy:6] Run Class76 - 5432ms
....
最後にタイミングがある行のみを読み込み、マトリックス内の対応する行にデータのビットを含める必要があります。
したがって、私の正規表現が次のようになっている場合:
^\[([^]]*)\][^[]*\[([^]]*)\] (Initialise|Run) (Class[0-9]+) - ([0-9]+)ms$
マトリックスの行を
\1,\2,\4,\5
ログ ファイルの 2 行目の IE では、マトリックスの行は次のようになります。
Node_1, "Ref:1111111, Strategy:4", Class1, 3432