我有一个 Pandas 系列科幻小说:
email
email1@email.com [1.0, 0.0, 0.0]
email2@email.com [2.0, 0.0, 0.0]
email3@email.com [1.0, 0.0, 0.0]
email4@email.com [4.0, 0.0, 0.0]
email5@email.com [1.0, 0.0, 3.0]
email6@email.com [1.0, 5.0, 0.0]
我想将其转换为以下 DataFrame:
index | email | list
_____________________________________________
0 | email1@email.com | [1.0, 0.0, 0.0]
1 | email2@email.com | [2.0, 0.0, 0.0]
2 | email3@email.com | [1.0, 0.0, 0.0]
3 | email4@email.com | [4.0, 0.0, 0.0]
4 | email5@email.com | [1.0, 0.0, 3.0]
5 | email6@email.com | [1.0, 5.0, 0.0]
我找到了一种方法,但我怀疑它是否更有效:
df1 = pd.DataFrame(data=sf.index, columns=['email'])
df2 = pd.DataFrame(data=sf.values, columns=['list'])
df = pd.merge(df1, df2, left_index=True, right_index=True)
最佳答案
您可以使用 DataFrame 构造函数在 dict 中将它们作为参数传递,而不是创建 2 个临时 dfs:
pd.DataFrame({'email':sf.index, 'list':sf.values})
有很多方法可以构建 df,请参阅 docs
关于python - 将 Pandas 系列转换为 DataFrame,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26097916/