concat
起来:
df2 = pd.concat([df, pd.DataFrame(list(df.pontos))], axis=1)
import pandas as pd
df = pd.DataFrame([
['A', dict(col1='1', col2='2')],
['B', dict(col1='3', col2='4')],
], columns=['X', 'D'])
print(df)
df2 = pd.concat([df, pd.DataFrame(list(df.D))], axis=1)
print(df2)
X D
0 A {'col2': '2', 'col1': '1'}
1 B {'col2': '4', 'col1': '3'}
X D col1 col2
0 A {'col2': '2', 'col1': '1'} 1 2
1 B {'col2': '4', 'col1': '3'} 3 4
你想要字典键“rodada”的值成为你新列的基础。所以你在循环中遍历这些字典条目,也就是d,然后通过键提取值来创建新列。df_times["rodada"] = [d.get('rodada') for d in df_times["pontos"]]
你也可以使用join和pandas apply函数:
df=df.join(df['pontos'].apply(pd.Series))