我有一个嵌套的字典(统计信息),我正尝试将其转换为Pandas DF。当我运行以下代码时,我得到了预期的结果:
BAL_sp = pd.DataFrame(data = stats['sp']['Orioles'])
但是,我需要这样做30次,然后将结果连接起来。当我运行一个for循环时,我得到一个ValueError: DataFrame constructor not properly called!
,我不明白,它认为统计信息中的键在循环中是有效的:
team_dict = {'LAA': 'Angels', 'ARI': 'Diamondbacks', 'BAL': 'Orioles', 'BOS': 'Red Sox', 'CHC': 'Cubs', 'CIN': 'Reds',
'CLE': 'Indians', 'COL': 'Rockies', 'DET': 'Tigers', 'HOU': 'Astros', 'KC': 'Royals', 'LAD': 'Dodgers',
'WSH':'Nationals', 'NYM': 'Mets', 'OAK': 'Athletics', 'PIT': 'Pirates', 'SD': 'Padres', 'SEA': 'Mariners',
'SF': 'Giants', 'STL': 'Cardinals', 'TB': 'Rays', 'TEX': 'Rangers', 'TOR': 'Blue Jays', 'MIN': 'Twins',
'PHI': 'Phillies', 'ATL': 'Braves', 'CWS': 'White Sox', 'MIA': 'Marlins', 'NYY': 'Yankees', 'MIL': 'Brewers' }
frames = []
for team in team_dict.values():
temp = pd.DataFrame(data = stats['sp'][team])
frames.append(temp)
sp_df = pd.concat(frames)
如果我data = [stats['sp'][team]]
不会引发错误,但是不会产生预期的结果。谢谢您的帮助。