teratail header banner
teratail header banner
質問するログイン新規登録
AWK

AWKは、UNIX 上で開発されたプログラミング言語で、CSVファイルなどのテキストファイルの処理を目的にデザインされています。

Q&A

1回答

938閲覧

Juicerでchimeric_sam.awkの実行時にawk: syntax error

退会済みユーザー

退会済みユーザー

総合スコア0

AWK

AWKは、UNIX 上で開発されたプログラミング言語で、CSVファイルなどのテキストファイルの処理を目的にデザインされています。

0グッド

0クリップ

投稿2023/04/19 09:13

編集2023/04/20 04:46

0

0

実現したいこと

Juicerを使ってHi-Cデータを取り扱いたい

前提

プログラミング初心者です。

Juicerを利用してHi-Cのコンタクトマップを作ろうとしています。
インストールは完了し、現在はgithubで配布されているテストデータのMiSeq GM12878 in-situ ファイルを使っています。
実行したところ、alignmentは成功したようなのですが、その後のscripts/common/chimeric_sam.awkの実行でエラーが発生してしまったようです。

発生している問題・エラーメッセージ

(-: Align of /usr/myJuicerDir/work/splits/HIC003_S2_L001_001.fastq.sam done successfully awk: syntax error at source line 164 source file /usr/myJuicerDir/scripts/common/chimeric_sam.awk context is >>> chromosomes[$1][ <<< i-2]=$i; awk: illegal statement at source line 164 source file /usr/myJuicerDir/scripts/common/chimeric_sam.awk [W::hts_set_opt] Cannot change block size for this format samtools sort: failed to read header from "-" ***! Failure during chimera handling of /usr/myJuicerDir/work/splits/HIC003_S2_L001_001.fastq

試したこと

awk, gawk, GNU Coreutilsのインストールの確認

補足情報(FW/ツールのバージョンなど)

M1 Macを使用しています

追記
日本語サイトで juicerを取り扱っているwebページや質問が少ないため、biostarsでも同様の質問をしています
https://www.biostars.org/p/9561122/
ご指摘がありましたので追記させていただきました

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

melian

2023/04/19 09:41 編集

> chromosomes[$1][ <<< i-2]=$i; GNU awk では、(おそらく) 4.1.0 以降で2次元配列の表記に chromosomes[i][j] 形式も使うことが可能になっています。GNU awk 以外の awk (nawk や mawk)、GNU awk 4.1.0 よりも前のバージョンでは chromosomes[i,j] 形式なので(実際には連想配列ですが)、chimeric_sam.awk ファイルの1行目の shebang を書き換えるとよいかと思います。 #!/usr/bin/awk -f => GNU awk コマンドの絶対パスに置き換える #!/path/to/GNU_awk_command -f
退会済みユーザー

退会済みユーザー

2023/04/19 10:17 編集

ありがとうございます。 早速shebang行を編集して実行してみたのですが、同様のエラーが発生してしまいました。 awkのバージョンを確認したところ、 ~$ awk -V GNU Awk 5.2.1, API 3.2, (GNU MPFR 4.2.0, GNU MP 6.2.1) Copyright (C) 1989, 1991-2022 Free Software Foundation. のように表示されました。
退会済みユーザー

退会済みユーザー

2023/04/20 04:23

そうです
退会済みユーザー

退会済みユーザー

2023/04/20 04:39

こちらの確認不足により存じ上げていませんでした ご指摘ありがとうございます 対処させていただきます
guest

回答1

0

githubでソースを見てみましたが、

awk -v stem=${name}${ext}_norm -f $juiceDir/scripts/chimeric_sam.awk $name$ext.sam > $name$ext.sam2

大本のシェルスクリプトからは、こんな感じで当該awkスクリプトを呼び出しているので、問題がawkのバージョン違いによって発生しているとすれば、いくらこのawkスクリプトのシェバングを書き換えても無駄です。
pathを変更して、GNU awkを優先的に使うように設定してからシェルスクリプトを実行してみましょう。

あと蛇足ながら、

ここを見ている人はバイオの人達ではありません。コンタクトマップがどうのアライメントがどうのと専門用語をくどくど書いていたら、本題に行く付く前にみんな離脱してしまいます。awkの問題解決が目的なのだからawkのことだけ説明しましょう。

投稿2023/04/21 04:57

KojiDoi

総合スコア13727

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.30%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問