2017-07-15 36 views
2

我有ID的列表,我通過循環,Python的 - 在一個列表/數據幀保存每個對象的值在循環的每次迭代

Allids = [201,202,203,204,205,206,207] 

現在,我通過每個ID循環和獲取這些ID的值。

for i in Allids: 
cu.execute('select var1, var2, var2 from tbl where id = 'i'') 

在我的下一個for循環中,我創建了一個空列表並獲取每個id的所有值。

values = [] 
for j in cu: 
    values.append(j) 
    dff = MyFunction(values) 

這裏,MyFunction創建這些附加values列表中的數據框大熊貓。運行後,它將所有內容保存在一個大的數據框中。

我的問題是,我如何將每個id的值保存到每個列表或熊貓數據框中而不是一個大數據框中?

+0

創建數據框的列表? –

+0

@COLDSPEED這是有前途的。它會以字典格式嗎? –

+0

只有在使用字典和排序無關緊要時纔有意義。否則,只需附加到dfs列表。 –

回答

2

如果您只想通過ID分隔數據,則可以將每個迭代的數據附加到名爲df_list的列表中。

df_list = [] 
for i in Allids: 
    cu.execute('select var1, var2, var2 from tbl where id = 'i'') 
    values = [j for j in cu] 
    df_list.append(MyFunction(values)) 

我已經用列表理解替換了內部循環。一旦填入values,您將調用MyFunction一次,並將返回的數據幀追加到df_list

+0

完美,這個作品!現在我可以迭代'df_list'中的每個項目:)謝謝! –

+0

@inja很高興幫助。 :) –

相關問題