我有這個awk腳本,我用它來過濾差異表達的基因。我有一個在河爲什麼awk腳本在Mac OS上不起作用,但在Linux上工作?
#Command to get DE genes
awk -F '\t' '$14 < 0.05 && $10 < -1 && $7 > 1 { print > "Genes-Down.csv" }
$14 < 0.05 && $10 > +1 && $8 > 1 { print > "Genes-Up.csv" }' Results-RPKMs.csv
創建我現在開始做我在Mac OS所有的分析和相同的命令不起作用csv文件。它也不會給出任何錯誤信息。它運行並沒有任何反應。我也對其他sed命令有同樣的問題,但使用awk很容易創建新的命令。 謝謝。
更新: MacOS X awk版本是20070501.但是,Ubuntu機器有1.3.3。命令awk --version不起作用。必須使用awk -W --version。所以我認爲這就是爲什麼它可以在Ubuntu上運行,但不能在MacOSX上運行。所以我下載mawk並使用fink安裝它,現在該命令在MacOSX中起作用。謝謝你的幫助。
更新2:其實問題不是awk。通常我在R中創建csv文件。然後我只是運行腳本來完成過濾。原來,如果我在Excel中打開csv文件或以csv格式保存Excel文件,那麼腳本不起作用(用不同的分隔符嘗試多次)。很顯然,如果您在MacOX(Excel 2011)中將電子表格保存爲.csv並嘗試在Excel中將其打開,則表明它是SYLK文件。這個在微軟網站上有描述。如果我使用OpenOffice,它工作得很好。 最好。
嘗試分組的''&&作爲'($ 14 <0.05 && $ 10零一二三六六零四零二零九七七九三二三六三三二一零1' –
'貓-vet「結果,RPKMs.csv |。頭-10'你看到在'^ M $'如果是這樣,那麼'dos2unix Results-RPKMs.csv'。否則編輯你的問題,包括兩臺機器的'awk --verion'的結果。祝你好運。 – shellter
我剛剛用'BSD awk'版本20070501在MacOS X上,它的工作沒有'mawk'和'gawk'一樣困難 – Scrutinizer