【发布时间】:2019-09-22 01:48:00
【问题描述】:
我写了一个函数。 使用追加添加了 3 次数据框。 但是结果只加了最后一次。
====== ・首先在函数外声明数据帧类型是错误的。 所以我在一个函数中声明了它。
·后来,我在 def AddDataframe (ymd, sb, vol) 之外写了 Dataframe :.然后我得到一个错误。错误如下。
NameError: 名称 'Hisframe10' 未定义
import pandas as pd
def AddDataframe(ymd,sb,vol):
data={'yyyymmdd':[],
'Sell':[],
'Buy':[],
'Volume':[],
'JPX':[],
'FutPrice':[]}
Hisframe8=pd.DataFrame(data)
Hisframe8
print('')
print('Hisframe8= ',Hisframe8)
adddata={'yyyymmdd':[ymd],
'Sell':[sb],
'Buy':['Nan'],
'Volume':[vol],
'JPX':[-1],
'FutPrice':[0.]}
Hisframe10=pd.DataFrame(adddata)
Hisframe10
return(Hisframe8.append(Hisframe10))
AddDataframe('2019-05-03','sell',123)
AddDataframe('2019-05-04','sell',345)
AddDataframe('2019-05-05','sell',456)
#Hisframe10 #err
======
我想添加 3 行数据框。
我该怎么做?
【问题讨论】:
-
你需要传入一个数据框来追加到
-
Hisframe8=pd.DataFrame(data) 应该在函数之外;每次调用函数时都会覆盖 Dataframe(通过创建新的 Dataframe)。
-
@wpercy 谢谢你的来信。
-
@GeorgPoe 谢谢你解释原因。
标签: python pandas dataframe append python-3.6