0
我寫過這段代碼,輸出結果不像預期的那樣。看起來,for循環經過第一次迭代兩次,然後錯過了第二次,直接跳到第三次。我看不出哪裏出了問題,所以有人指出這個錯誤?謝謝!下面熊貓在範圍內迭代。相同的數字兩次?
代碼:
i = 0
df_int = df1[(df1.sLap > df_z.Entry[i]) & (df1.sLap < df_z.Exit[i]) & (df1.NLap == Lap1)]
df_Entry = df_int.groupby(df_int.BCornerEntry).aggregate([np.mean, np.std])
df_Entry.rename(index={1: 'T'+str(df_z['Turn Number'][i])}, inplace=True)
for i in range(len(df_z)):
df_int = df1[(df1.sLap > df_z.Entry[i]) & (df1.sLap < df_z.Exit[i]) & (df1.NLap == Lap1)]
df_Entry2 = df_int.groupby(df_int.BCornerEntry).aggregate([np.mean, np.std])
df_Entry2.rename(index={1: 'T'+str(df_z['Turn Number'][i])}, inplace=True)
df_Entry = pd.concat([df_Entry, df_Entry2])
df_z是Excel文檔中包含這樣的數據:
Turn Number Entry Exit
0 1 321 441
1 2 893 1033
2 3 1071 1184
3 4 1234 1352
4 5 2354 2454
5 6 2464 2554
6 7 2574 2689
7 8 2955 3120..... and so on
然後DF1是具有幾千行的30列和10的(因此平均了大規模的數據幀和std)。
我的輸出應該是:
tLap
mean std
BCornerEntry
T1 6.845490 0.591227
T2 14.515195 0.541967
T3 19.598690 0.319181
T4 21.555500 0.246757
T5 34.980000 0.518170
T6 37.245000 0.209284
T7 40.220541 0.322800.... and so on
但是我得到這個:
tLap
mean std
BCornerEntry
T1 6.845490 0.591227
T1 6.845490 0.591227
T3 19.598690 0.319181
T4 21.555500 0.246757
T5 34.980000 0.518170
T6 37.245000 0.209284
T7 40.220541 0.322800..... and so on
T2仍然是T1和數字是一樣的嗎?我做錯了什麼?任何幫助將不勝感激!
這是由設計爲(http://stackoverflow.com/questions/21390035/python-pandas-groupby-object-apply-method-duplicates-first-group) – EdChum
@Anand S沿DUP [問題]表示Kumar你真的只是編輯它,在最後取消'謝謝你'? – OParker
看看 - http://meta.stackexchange.com/questions/2950/should-hi-thanks-taglines-and-salutations-be-removed-from-posts –