我有兩個相同大小的矢量,一個用於波高,另一個用於單獨對應於測量時間的相同時間點。我想知道有多少時間的兩個特定的數據被重複,例如:如何計算數組中重複一對特定值的次數?
HS = [0.5 1.0 2.3 0.5 0.5]
的Tm = [2.0 2.5 2.0 2.0 3.0]
這樣你就可以見:
HS的Tm計數
0.5 2.0 2
0.5 2.5 0
0.5 3.0 1
1.0 2.0 0
1.0 2.5 1 ...
我嘗試,但會出現以下的錯誤,因爲我出現整個行和列沒有數據,並且當我看到我的信息用於值。
from numpy import *
from matplotlib.pyplot import *
import matplotlib.pyplot as plt
from time import *
clf; cla; close
dat = loadtxt("ecmwf.dat", unpack=True)
HSf = dat[0,:]
HSf = around(HSf,decimals=1)
TMf = dat[1,:]
TMf = around(TMf,decimals=1)
mmat = zeros((31,141))
vhs = linspace(0.0,3.0,31)
vtm = linspace(0.0,14.0,141)
for i in xrange(0, vtm.size):
for k in xrange(0, vhs.size):
if all((k <= vhs.size) & (i <= vtm.size)):
lg1 = (TMf == vtm[i]) & (HSf == vhs[k])
lg2 = sum(lg1)
if lg2>=1:
fg1 = text(i,k, str(lg2),horizontalalignment='center', verticalalignment='center',fontsize=6)
mmat[k,i] = lg2
我認爲我有第一個最完整的答案,是我提供了你想要的,還是你想要零計數? –