将每一行转换为数据框并连接结果

2024-04-18

我有一个数据框df按照下面的格式,其中content是一个字符串列。

                                                               content
0  {'api': ['api_1', 'api_1', 'api_1'],'A': [1,2,3], 'B': [4,5,6] }
1  {'api': ['api_2', 'api_2', 'api_2'],'A': [7,8,9], 'B': [10,11,12] }

我想将其转换为以下格式:

     api  A   B
0  api_1  1  4
1  api_1  2  5
2  api_1  3  6
3  api_2  7  10
4  api_2  8  11
5  api_2  9  12

我尝试这样做,

pd.concat([pd.DataFrame(eval(row['content'])) for (rownum, row) in df.iterrows()])

这有效,但看起来不太好。有没有更好的方法来做到这一点?


让我们尝试一下

out = pd.concat(pd.DataFrame(x) for x in df.content.map(literal_eval))
     api  A   B
0  api_1  1   4
1  api_1  2   5
2  api_1  3   6
0  api_2  7  10
1  api_2  8  11
2  api_2  9  12
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将每一行转换为数据框并连接结果 的相关文章

随机推荐