我使用熊貓來讀取excel文件並將電子表格轉換爲數據框。然後,我應用groupby並使用get_group將各個組存儲在變量中以供以後計算。 我的問題是,輸入文件不總是相同的大小,有時groupby會導致10 dfs,有時25等等。如何讓我的程序忽略df從初始數據中丟失?獲取pandas groupby對象以忽略丟失的數據框
df = pd.read_excel(filepath, 0, skiprows=3, parse_cols='A,B,C,E,F,G',
names=['Result', 'Trial', 'Well', 'Distance', 'Speed', 'Time'])
df = df.replace({'-': 0}, regex=True) #replaces '-' values with 0
df = df['Trial'].unique()
gb = df.groupby('Trial') #groups by column Trial
trial_1 = gb.get_group('Trial 1')
trial_2 = gb.get_group('Trial 2')
trial_3 = gb.get_group('Trial 3')
trial_4 = gb.get_group('Trial 4')
trial_5 = gb.get_group('Trial 5')
說我的初始數據只有3個試驗,我怎麼會忽略試驗4,5?我的代碼運行時,所有的試驗都存在,但一些丟失的情況下失敗:(這聽起來非常像,如果將需要的聲明,但我疲倦的大腦已經不知道在哪裏...提前
謝謝!
'GB .groups'將返回組名稱和標籤的字典:http://pandas.pydata.org/pandas-docs/stable/generated/pandas.core.groupby.GroupBy.groups.html所以你可以用這些來獲得團體 – EdChum
對於愚蠢的問題抱歉,但是這對我有幫助嗎? – ElHi
因爲你得到了一個組的字典,你不需要在代碼中硬編碼組的數量 – EdChum