在python中使用自定义函数
我正在创建一个函数,如下所示:在python中使用自定义函数,python,list,function,dataframe,Python,List,Function,Dataframe,我正在创建一个函数,如下所示: def Player_stats(data,Template,Name,Competition): df_Player = data [(data['Player'] == Name) & (data['template'] == Template)] print(df_Player.head()) return df_Player def Player_stats(data,Template,Name,Competiti
def Player_stats(data,Template,Name,Competition):
df_Player = data [(data['Player'] == Name) & (data['template'] == Template)]
print(df_Player.head())
return df_Player
def Player_stats(data,Template,Name,Competition):
df_Player = data [(data['Player'] == 'P. Pogba') & (data['template'] == 'ACCURACY')]
print(df_Player.head())
return df_Player
函数的输入是数据(dataframe)、模板(String)、名称(String)、竞争(String)
下面是我如何调用该函数的:
Template ='ACCURACY'
Competition = 'England. Premier League'
Name = 'P. Pogba'
df = Player_stats (DF_new,Name,Template,Competition)
问题是,当我调用该函数时,它会显示空数据帧
如果我只是在函数中插入精确的字符串,如下所示:
def Player_stats(data,Template,Name,Competition):
df_Player = data [(data['Player'] == Name) & (data['template'] == Template)]
print(df_Player.head())
return df_Player
def Player_stats(data,Template,Name,Competition):
df_Player = data [(data['Player'] == 'P. Pogba') & (data['template'] == 'ACCURACY')]
print(df_Player.head())
return df_Player
它向我展示了数据帧。但是,我想使用不同的输入调用函数
每次,我使用的变量,如名称,竞争,模板,它总是显示空数据帧
有人能给我提建议吗
谢谢
Zep.在调用函数时,请检查dataframe中的列名是否正确。将数据['Player']更新为data.Player
def Player_stats(data,Template,Name,Competition):
df_Player = data [(data.Player == Name) & (data.template == Template)]
print(df_Player.head())
return df_Player
在调用dataframe函数时,请检查dataframe中的列名是否正确。将数据['Player']更新为data.Player
def Player_stats(data,Template,Name,Competition):
df_Player = data [(data.Player == Name) & (data.template == Template)]
print(df_Player.head())
return df_Player
您已经反转了模板和名称字符串,这有意义吗。我怎么没注意到,谢谢。很多请注意我的错误,变量和函数名应遵循带有下划线的
小写形式。您是否颠倒了模板和名称字符串?OMG。我怎么没注意到,谢谢。很多请注意我的错误,变量和函数名应遵循带有下划线的小写形式。