1
我要使用循環來查找python2.7三種元素中每最小分歧每三個要素的細微差別for循環找到使用python2.7
這是我test.csv數據
E1-2 u7 4
E1-2 u7 7
E1-2 u7 8
F(1)-1 u7 3
F(1)-1 u7 9
F(1)-1 u7 8
.. .. ..
,我希望得到以下結果
E1-2 u7 7
E1-2 u7 8
F(1)-1 u7 8
F(1)-1 u7 9
.. .. ..
因爲在組「E1-2」,最小差元素是7,8
8-4=5
8-7=1 # the minimal difference
7-4=3
這是我的感冒,但有一些問題。誰可以幫我修改它?謝謝。
from itertools import tee, izip
def pairwise(iterable):
"s -> (s0,s1), (s1,s2), (s2, s3), ..."
a, b = tee(iterable)
next(b, None)
return izip(a, b)`
def mins (datas):
mi=min(pairwise(sorted(datas)), key=lambda x: x[1] - x[0])
return list(mi)`
import pandas as pd
qrt=pd.read_csv("test.csv")
def cul(dat,sam):
#results=pd.DataFrame()
a=dat.iloc[0:2]
b=pd.Series(mins(dat[sam].tolist()))
a.loc[:,'D']=b
return a`
for i in range(0,len(qrt["Ct"])-1,3):
results=pd.DataFrame()
group=qrt[i:i+3]
c=cul(group,"Ct")
results=results.append(c)
print results.head()
輸出:
Sample Detector Ct D
0 E1-2 u7 4 7
1 E1-2 u7 7 8
Sample Detector Ct D
3 F(1)-1 u7 3 NaN
4 F(1)-1 u7 9 NaN
做Shoudn't'F(1)-1'有'9'和'8'之間的最小差異? –
是的,我有一個錯誤。謝謝。 – hope