Python 使用for循环使用字典附加数据帧
我有以下字典,我想将它们添加到熊猫数据框中:Python 使用for循环使用字典附加数据帧,python,pandas,for-loop,Python,Pandas,For Loop,我有以下字典,我想将它们添加到熊猫数据框中: crimes1 = {'SOUTHERN': 28445, 'NORTHERN': 20100, 'MISSION': 19503} < >我用我想要的列名创建空白数据框: column_names = ['Neighborhood', 'Count'] crimes2 = pd.DataFrame(columns=column_names) 接下来,我想使用for循环将包含上述键和值的字典附加到dataframe: for i, x in
crimes1 = {'SOUTHERN': 28445,
'NORTHERN': 20100,
'MISSION': 19503}
< >我用我想要的列名创建空白数据框:
column_names = ['Neighborhood', 'Count']
crimes2 = pd.DataFrame(columns=column_names)
接下来,我想使用for循环将包含上述键和值的字典附加到dataframe:
for i, x in crimes1:
crimes2 = crimes2.append({'Neighborhood': i}, {'Count': x}, ignore_index=True)
我得到的错误是ValueError:要解压缩的值太多(预期为2)
当我单独填充一列时,我只能填充一列,但似乎无法将这两个列都放入一个数据帧中。关于如何使用上面的for循环使其工作,您有什么想法吗?您得到的是
ValueError
,因为您没有调用crimes1.items()。简单地说,使用:
for i, x in crimes1.items():
crimes2 = crimes2.append({'Neighborhood': i, 'Count': x}, ignore_index=True)
结果:
# print(crimes2)
Neighborhood Count
0 SOUTHERN 28445
1 NORTHERN 20100
2 MISSION 19503
您得到的是ValueError
,因为您没有调用遍历字典的键、值对所需的crimes1.items()
。简单地说,使用:
for i, x in crimes1.items():
crimes2 = crimes2.append({'Neighborhood': i, 'Count': x}, ignore_index=True)
结果:
# print(crimes2)
Neighborhood Count
0 SOUTHERN 28445
1 NORTHERN 20100
2 MISSION 19503
您可以使用map
功能
crimes2 = pd.DataFrame(map(list, crimes1.items()))
crimes2.columns = ['Neighborhood', 'Count']
您可以使用map
功能
crimes2 = pd.DataFrame(map(list, crimes1.items()))
crimes2.columns = ['Neighborhood', 'Count']
你可以试试这个
crimes2 = pd.DataFrame(crimes1.items(), columns=['Neighborhood', 'Count'])
Neighborhood Count
0 SOUTHERN 28445
1 NORTHERN 20100
2 MISSION 19503
你可以试试这个
crimes2 = pd.DataFrame(crimes1.items(), columns=['Neighborhood', 'Count'])
Neighborhood Count
0 SOUTHERN 28445
1 NORTHERN 20100
2 MISSION 19503