当前位置 : 主页 > 编程语言 > python >

python – 将pandas Series转换为DataFrame

来源:互联网 收集:自由互联 发布时间:2021-06-25
我有一个熊猫系列sf: emailemail1@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] 我想将其转
我有一个熊猫系列sf:

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构造函数将这些作为params传递给dms,而不是创建2个临时dfs:

pd.DataFrame({'email':sf.index, 'list':sf.values})

有很多方法可以构建df,请参阅docs

网友评论