20220316 技术点小结:如何将Series转换成Dataframe

第1类方法:直接将Series转化成Dataframe

1.1 使用Pd.Dataframe()方法

1.2 使用Series.to_fame()方法

这里有一个例子,一些文本分词后计算词频并按词频从大到小排序,得到一个Series:
在这里插入图片描述

1.1 和 1.2 转化的结果都是
在这里插入图片描述

1.1 和 1.2 的区别在于:将Series转化为Dataframe时,同时给Series.values这一列命名的语法不一样。

  • Pd.Dataframe()方法
    pd.Dataframe(series, columns=[‘列名’])
  • Series.to_fame()方法
    series.to_frame(name=‘列名’)

1.1 和 1.2 转化时同时给列名的最终效果都是:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KBna0Cgr-1647422299447)(en-resource://database/48697:1)]

使用1.1 或 1.2方法之后,我们经常还需要Dataframe.reset_index()

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-WsytwSD6-1647422299448)(en-resource://database/48774:1)]

最后还需要修改列名

Dataframe.rename(columns={‘index’:‘词’})
输出结果:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-RCj7dHWR-1647422299448)(en-resource://database/48776:1)]

总结一下代码:

  • 总结
    第1步:
    pd.Dataframe(series, columns=[‘列名2’])

    series.to_frame(name=‘列名2’)
    第2步:
    Dataframe.reset_index().rename(columns={‘index’:‘列名1’})
  • 也可以
    第1步:
    pd.Dataframe(series)

    series.to_frame()
    第2步:
    Dataframe.columns = [‘列名1’, ‘列名2’]

第2类方法:从字典的角度去创建Dataframe

pd.Dataframe({‘列名1’:word_count.index, ‘列名2’:word_count.values}
最终结果与第1类方法一样。


版权声明:本文为MinskyYi原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。