【发布时间】:2015-09-08 11:16:56
【问题描述】:
我有一个数据帧,我试图将其附加到另一个数据帧。我用 .append() 尝试了各种方法,但没有成功的方法。当我从 iterrows 打印数据时。我提供了两种可能的方法来解决下面的问题,一种会产生错误,另一种不会用任何东西填充数据框。
我尝试创建的工作流程是根据包含客户订单交易历史的文件创建数据框。我只想为每个订单创建一条记录,并且我将添加其他逻辑以根据历史记录中的更新来更新订单详细信息。到脚本结束时,它将在遍历历史文件后为所有订单以及这些订单的结束状态提供一条记录。
class om():
"""Manages over the current state of orders"""
def __init__(self,dataF, desc='NONE'):
self.df = pd.DataFrame
self.data = dataF
print type(dataF)
self.oD= self.df(data=None,columns=desc)
def add_data(self,df):
for i, row in self.data.iterrows():
print 'row '+str(row)
print type(row)
df.append(self.data[i], ignore_index =True) """ This line creates and error"""
df.append(row, ignore_index =True) """This line doesn't append anything to the dataframe."""
test = order_manager(body,header)
test.add_data(test.orderData)
【问题讨论】:
-
我想你只想
pd.concat([df1, df2])。无需一次迭代地追加一行。 -
你看过examples in
append吗?
标签: python python-2.7 pandas dataframe