如何将所有行放入一个 df 中?
How can I put all rows into one df?
我正在将 nfl 数据抓取到一个数据框中,但输出是将每个团队放入每个团队的单独数据框中。我怎样才能得到它,以便输出将每一行放入所有相同的 DF 中?
team_abbreviations = ['buf','mia','nwe','nyj','htx','clt','jax','oti','cin','pit',
'cle','rav','den','kan','rai','sdg','phi','dal','nyg','was',
'car','nor','tam','atl','chi','det','gnb','min','crd','ram','sea','sfo']
for i in team_abbreviations:
url = 'https://www.pro-football-reference.com/teams/{0}/2021/gamelog/'.format(i)
data = pd.read_html(url)[0]
data.rename(columns={'Unnamed: 3_level_1': 'Box_link'}, inplace=True)
data.rename(columns={'Unnamed: 4_level_1': 'W/L'}, inplace=True)
data.rename(columns={'Unnamed: 6_level_1': '@'}, inplace=True)
data.rename(columns={'Unnamed: 3_level_1': 'Box_link'}, inplace=True)
data.columns = ['Week', 'Day', 'Date', 'Box_link', 'W/L', 'OT', 'Home/Away', 'Opp_Team', 'Tm_Score',
'Opp_Score', 'PassCmp', 'PassAtt', 'PassYds', 'PassTD', 'Int', 'Sk', 'YdsLost_Sk', 'PassY/A',
'PassNY/A', 'Cmp%', 'PasserRate', 'RushAtt', 'RushYds', 'RushY/A', 'RushTD', 'FGM', 'FGA', 'XPM',
'XPA', 'Pnt', 'PntYds', '3DConv', '3DAtt', '4DConv', '4DAtt', 'ToP']
data = data[pd.notnull(data['Opp_Score'])]
print(data)
How can I get it so the output puts each row into all the same DF?
使用concat
team_abbreviations = ['buf', 'mia', 'nwe', 'nyj', 'htx', 'clt', 'jax', 'oti', 'cin', 'pit',
'cle', 'rav', 'den', 'kan', 'rai', 'sdg', 'phi', 'dal', 'nyg', 'was',
'car', 'nor', 'tam', 'atl', 'chi', 'det', 'gnb', 'min', 'crd', 'ram', 'sea', 'sfo']
df_holder = []
for i in team_abbreviations:
url = 'https://www.pro-football-reference.com/teams/{0}/2021/gamelog/'.format(i)
data = pd.read_html(url)[0]
data.rename(columns={'Unnamed: 3_level_1': 'Box_link'}, inplace=True)
data.rename(columns={'Unnamed: 4_level_1': 'W/L'}, inplace=True)
data.rename(columns={'Unnamed: 6_level_1': '@'}, inplace=True)
data.rename(columns={'Unnamed: 3_level_1': 'Box_link'}, inplace=True)
data.columns = ['Week', 'Day', 'Date', 'Box_link', 'W/L', 'OT', 'Home/Away', 'Opp_Team', 'Tm_Score',
'Opp_Score', 'PassCmp', 'PassAtt', 'PassYds', 'PassTD', 'Int', 'Sk', 'YdsLost_Sk', 'PassY/A',
'PassNY/A', 'Cmp%', 'PasserRate', 'RushAtt', 'RushYds', 'RushY/A', 'RushTD', 'FGM', 'FGA', 'XPM',
'XPA', 'Pnt', 'PntYds', '3DConv', '3DAtt', '4DConv', '4DAtt', 'ToP']
data = data[pd.notnull(data['Opp_Score'])]
print(data)
df_holder.append(data)
all_dfs = pd.concat(df_holder)
我正在将 nfl 数据抓取到一个数据框中,但输出是将每个团队放入每个团队的单独数据框中。我怎样才能得到它,以便输出将每一行放入所有相同的 DF 中?
team_abbreviations = ['buf','mia','nwe','nyj','htx','clt','jax','oti','cin','pit',
'cle','rav','den','kan','rai','sdg','phi','dal','nyg','was',
'car','nor','tam','atl','chi','det','gnb','min','crd','ram','sea','sfo']
for i in team_abbreviations:
url = 'https://www.pro-football-reference.com/teams/{0}/2021/gamelog/'.format(i)
data = pd.read_html(url)[0]
data.rename(columns={'Unnamed: 3_level_1': 'Box_link'}, inplace=True)
data.rename(columns={'Unnamed: 4_level_1': 'W/L'}, inplace=True)
data.rename(columns={'Unnamed: 6_level_1': '@'}, inplace=True)
data.rename(columns={'Unnamed: 3_level_1': 'Box_link'}, inplace=True)
data.columns = ['Week', 'Day', 'Date', 'Box_link', 'W/L', 'OT', 'Home/Away', 'Opp_Team', 'Tm_Score',
'Opp_Score', 'PassCmp', 'PassAtt', 'PassYds', 'PassTD', 'Int', 'Sk', 'YdsLost_Sk', 'PassY/A',
'PassNY/A', 'Cmp%', 'PasserRate', 'RushAtt', 'RushYds', 'RushY/A', 'RushTD', 'FGM', 'FGA', 'XPM',
'XPA', 'Pnt', 'PntYds', '3DConv', '3DAtt', '4DConv', '4DAtt', 'ToP']
data = data[pd.notnull(data['Opp_Score'])]
print(data)
How can I get it so the output puts each row into all the same DF?
使用concat
team_abbreviations = ['buf', 'mia', 'nwe', 'nyj', 'htx', 'clt', 'jax', 'oti', 'cin', 'pit',
'cle', 'rav', 'den', 'kan', 'rai', 'sdg', 'phi', 'dal', 'nyg', 'was',
'car', 'nor', 'tam', 'atl', 'chi', 'det', 'gnb', 'min', 'crd', 'ram', 'sea', 'sfo']
df_holder = []
for i in team_abbreviations:
url = 'https://www.pro-football-reference.com/teams/{0}/2021/gamelog/'.format(i)
data = pd.read_html(url)[0]
data.rename(columns={'Unnamed: 3_level_1': 'Box_link'}, inplace=True)
data.rename(columns={'Unnamed: 4_level_1': 'W/L'}, inplace=True)
data.rename(columns={'Unnamed: 6_level_1': '@'}, inplace=True)
data.rename(columns={'Unnamed: 3_level_1': 'Box_link'}, inplace=True)
data.columns = ['Week', 'Day', 'Date', 'Box_link', 'W/L', 'OT', 'Home/Away', 'Opp_Team', 'Tm_Score',
'Opp_Score', 'PassCmp', 'PassAtt', 'PassYds', 'PassTD', 'Int', 'Sk', 'YdsLost_Sk', 'PassY/A',
'PassNY/A', 'Cmp%', 'PasserRate', 'RushAtt', 'RushYds', 'RushY/A', 'RushTD', 'FGM', 'FGA', 'XPM',
'XPA', 'Pnt', 'PntYds', '3DConv', '3DAtt', '4DConv', '4DAtt', 'ToP']
data = data[pd.notnull(data['Opp_Score'])]
print(data)
df_holder.append(data)
all_dfs = pd.concat(df_holder)