我認爲你可以使用:
v1 = pd.Series(4344.22552, index=[4906], name='y')
print (v1)
4906 4344.22552
Name: y, dtype: float64
v2 = pd.Series(5400.39864, index=[4785], name='y')
print (v2)
4785 5400.39864
Name: y, dtype: float64
。減去值由values
轉化爲numpy array
- 獲得陣列,length=1
,因此通過[0]
選擇:
print (v2.values[0] - v1.values[0])
1056.17312
print ((v2.values - v1.values)[0])
1056.17312
或者通過選擇v1
和v2
第一個值:
print (v2.iat[0] - v1.iat[0])
1056.17312
但我覺得更好的是使用idxmax
和 idxmin
:
v1 = dd.loc[dd['localtime'].idxmax(), 'y']
v2= dd.loc[dd['localtime'].idxmin(), 'y']
樣品:
dd = pd.DataFrame({'localtime':[1,2,3,5],
'y':[5400.39864,2000,3000,4344.22552]},
index=[4785,4786,4788,4906])
print (dd)
localtime y
4785 1 5400.39864
4786 2 2000.00000
4788 3 3000.00000
4906 5 4344.22552
v1 = dd.loc[dd['localtime'].idxmax(), 'y']
v2 = dd.loc[dd['localtime'].idxmin(), 'y']
print (v2 - v1)
1056.17312
感謝。這是對象類型問題。 – Shahadat05