我有這樣的字符串的列表:如何從Python中的字符串列表中獲取每個位置的字母百分比頻率?
列表:
('aatt')
('aaga')
('aaac')
('gtag')
#the real list have thousands of strings
最佳期望的結果的表格分隔的文件是這樣的:
0 1 2 3
a:75% a:75% a:50% a:25%
g:25% t:25% g:25% c:25%
t:25% g:25%
t:25%
(標題是沒有必要的)
我做了一個bash腳本來做到這一點,但現在我正在學習python,我想用它做。
這是我的bash代碼:
#!/bin/bash
for i in $(echo 1 2 3 4)
do echo $i && cat FILE | grep N -v | awk -F "" '{print $'$i'}' | awk -f ./WC
done
其中WC是以下wordcounter:
BEGIN {
FS="[^a-zA-Z]+"
}
{
for (i=1; i<=NF; i++)
words[toupper($i)]++
}
END {
for (i in words)
print i, words[i]
}
我們是不是在這裏根據需求爲您製作完整的工作程序。你試過什麼了?那麼它不起作用呢?更重要的是,**我們如何爲您編寫代碼可以幫助您學習Python?** – 2011-05-30 03:02:30
如果您可以在_bash_中處理該問題,那麼Python肯定會覺得太簡單:) – sarnold 2011-05-30 03:06:13
這不是一個非常複雜的問題。我用awk和其他bash命令做了一個腳本。我只想在Python中進行一些定位,以便做到這一點。 – Geparada 2011-05-30 03:06:39