import pandas as pd
columns_list=['sport','home','away','selection','odds','tipster','stake',
'is_won','profit','bookie']
df = pd.DataFrame(columns=columns_list)
def bet(sport,home,away,selection,odds,tipster,stake,profit,bookie):
if profit > 0:
is_won = True
elif profit < 0:
is_won = False
temp_df = pd.DataFrame([[sport,home,away,selection,odds,tipster,stake,
is_won,profit,bookie]], columns=columns_list)
df.append(temp_df, ignore_index=True)
#print(smemels has been inserted)
#add market
bet(sport="football",home="sporting",away="porto",selection="sporting",
odds=2.7,tipster="me",stake=500,profit=500,bookie="marathon")
我试图创建一个空的DataFrame
,然后通过创建一个函数来追加新行,所以我只需要放入值,它就会自动插入。当我运行代码bet(...)
时,它并没有真正附加数据。在
见http://book.pythontips.com/en/latest/args_and_kwargs.html
kwargs允许你添加关键字,就像你想做的那样。在
只需在函数头下方添加“global df”,并在append函数中添加参数inplace=True:
第一个命令告诉函数获取全局(函数外部)df变量,而不是在本地创建一个新的df变量。第二个方法更改数据帧,而不是返回新对象。在
相关问题 更多 >
编程相关推荐