【发布时间】:2021-05-12 02:32:04
【问题描述】:
【问题讨论】:
标签: python python-3.x pandas list dictionary
【问题讨论】:
标签: python python-3.x pandas list dictionary
转置数据帧并使用 loc 通过索引查找将列值替换为字典值。
dct2={0:[{'a':1,'b':2},{'a':3,'b':4}] ,
1:[{'a':4,'b':5},{'a':4,'b':1}] ,
2:[{'a':3,'b':6},{'a':5,'b':4}]
}
df=pd.DataFrame(dct2)
df=df.T
df=df.rename(columns={0:'a^',1:'b^'})
df=df.reset_index()
print(df)
for key,row in df.iterrows():
df.loc[key,'a^']=str(row['a^']['a'])+","+str(row['b^']['a'])
df.loc[key,'b^']=str(row['a^']['b'])+","+str(row['b^']['b'])
print(df)
【讨论】:
试试下面的代码 -
# assuming that source data frame is df and you have imported pandas as pd
dataDict = {'a': [], 'b': []}
for i, row in df.iterrows():
dataDict['a'].append((row[0][0]['a'], row[0][1]['a']))
dataDict['b'].append((row[0][0]['b'], row[0][1]['b']))
newDataFrame = pd.DataFrame(dataDict)
print(newDataFrame)
【讨论】: