是否有可能附加到一个不包含任何索引或列的空数据帧?

我试图这样做,但一直得到一个空的数据框架在结束。

e.g.

import pandas as pd

df = pd.DataFrame()
data = ['some kind of data here' --> I have checked the type already, and it is a dataframe]
df.append(data)

结果如下所示:

Empty DataFrame
Columns: []
Index: []

这应该可以工作:

>>> df = pd.DataFrame()
>>> data = pd.DataFrame({"A": range(3)})
>>> df = df.append(data) 
>>> df

   A
0  0
1  1
2  2

因为追加不会发生在原地,所以如果你想要它,你必须存储输出:

>>> df = pd.DataFrame()
>>> data = pd.DataFrame({"A": range(3)})
>>> df.append(data)  # without storing
>>> df
Empty DataFrame
Columns: []
Index: []
>>> df = df.append(data)
>>> df
   A
0  0
1  1
2  2

如果你想添加一行,你可以使用字典:

df = pd.DataFrame()
df = df.append({'name': 'Zed', 'age': 9, 'height': 2}, ignore_index=True)

这就给了你:

   age  height name
0    9       2  Zed

你可以这样连接数据:

InfoDF = pd.DataFrame()
tempDF = pd.DataFrame(rows,columns=['id','min_date'])

InfoDF = pd.concat([InfoDF,tempDF])

1.4.0版后已移除:使用concat()代替。

因此:

df = pd.DataFrame() # empty dataframe
df2 = pd..DataFrame(...) # some dataframe with data

df = pd.concat([df, df2])

答案是非常有用的,但由于pandas. datafframe .append已弃用(已经被许多用户提到),并且答案使用pandas。concat不是“可运行的代码片段”,我想添加以下片段:

import pandas as pd

df = pd.DataFrame(columns =['name','age'])
row_to_append = pd.DataFrame([{'name':"Alice", 'age':"25"},{'name':"Bob", 'age':"32"}])
df = pd.concat([df,row_to_append])

那么df现在是:

    name age
0  Alice  25
1    Bob  32