python:DataFrame.append不追加元素

python:DataFrame.append不追加元素,python,pandas,Python,Pandas,我正在用python工作一周,我需要一些帮助。 我希望,如果满足某些条件,它会向数据库添加一个值。 我的程序没有给出错误,但它没有将元素附加到我的数据库中 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': vess

我正在用python工作一周,我需要一些帮助。 我希望,如果满足某些条件,它会向数据库添加一个值。 我的程序没有给出错误,但它没有将元素附加到我的数据库中

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

如果我运行这个,最后仍然会得到一个空的数据帧。我不知道它为什么不执行我希望它执行的操作

您应该重新分配数据帧,例如:

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语法中。

它不是就地操作。尝试
noTEU=noTEU.append(imo\u船只)
我们对此有一个规范问题吗?不是特定于追加,但一般来说,对于返回新数据帧的方法?@ayhan有很多问题都有相同的答案,但没有一个标准答案,应该创建一个,因为解释起来很烦人这里有一个类似的问题:@ayhan:完全同意。即使是文档也没有指明是否执行了
append
操作
inplace