1
我無法格式化numpy的陣列與savetxt保存時:如何在savetxt中舍入numpy值?
from numpy import *
a = loadtxt('frequenz.txt')
b = sum(a[0:10,1:4], 1)/3-20741
savetxt('solution.txt', b, fmt='%.2f', delimiter='\t', header='average')
沒有顯示錯誤:
fh.write(asbytes(format % tuple(row) + newline))
UnboundLocalError: local variable 'format' referenced before assignment
當保存的值,而不FMT它的工作原理,但我只想有2位小數:
from numpy import *
a = loadtxt('frequenz.txt')
b = sum(a[0:10,1:4], 1)/3-20741
savetxt('solution.txt', b, delimiter='\t', header='average')
solution.txt:
# average
3.666666666667879326e+00
6.666666666667879326e+00
9.333333333332120674e+00
1.300000000000000000e+01
1.533333333333212067e+01
1.833333333333212067e+01
2.133333333333212067e+01
2.466666666666787933e+01
2.766666666666787933e+01
3.066666666666787933e+01
個
frequenz.txt:
#0 20741 20741 20741
6 20745 20745 20744 20739 20739 20738
12 20748 20747 20748 20736 20736 20736
18 20750 20751 20750 20732 20733 20732
24 20754 20754 20754 20730 20730 20730
30 20756 20756 20757 20727 20727 20726
36 20760 20759 20759 20723 20723 20724
42 20762 20762 20763 20721 20721 20720
48 20766 20766 20765 20718 20718 20718
54 20768 20769 20769 20715 20715 20714
60 20771 20772 20772 20712 20712 20712
謝謝您的幫助! Martin
你使用的是什麼版本的numpy和python?我經常使用numpy,大部分時間我使用'np.savetxt'指定格式,我不記得那樣的錯誤 –
您的代碼適用於我使用numpy 1.7.1。 –
python版本:2.7.5,numpy版本:1.7.1 – marsch