2016-09-16 95 views
1

我正在與python一週工作,我需要一些幫助。 我希望如果某些條件滿足,它會向數據庫添加一個值。 我的程序不給一個錯誤,但如果我跑這並不元素添加到我的數據庫python:DataFrame.append不附加元素

import pandas as pd 
noTEU = pd.DataFrame() # empty database 
index_TEU = 0 
for vessel in list: 
    if condition is fullfilled: 
     imo_vessel = pd.DataFrame({'imo': vessel}, index=[index_TEU]) 
     noTEU.append(imo_vessel) # I want here to add an element to my database 
     index_TEU = index_TEU + 1 

,最後我還是得到一個空的數據幀。我不知道爲什麼它不會做我想做的事情

+2

這不是一個就地操作。試試'noTEU = noTEU.append(imo_vessel)' – ayhan

+1

我們對此有一個規範的問題嗎?不是特定於追加,而是一般來說,返回新數據框的方法? – ayhan

+2

@ayhan有相同的答案噸的問題,但沒有一個規範的,它應該被創建,因爲它變得無聊解釋這 – EdChum

回答

1

你應該重新分配數據幀,例如:

import pandas as pd 
noTEU = pd.DataFrame() # empty database 
index_TEU = 0 
for vessel in list: 
    if condition is fullfilled: 
     imo_vessel = pd.DataFrame({'imo': vessel}, index=[index_TEU]) 
     noTEU = noTEU.append(imo_vessel) # I want here to add an element to my database 
     index_TEU = index_TEU + 1 

因爲它包含在不使用關鍵字list的列表Python語法。

+0

它的工作原理,謝謝! – Koen