zoukankan      html  css  js  c++  java
  • Python之多列数据(元组)同时写入DataFrame不同列

    数据分析过程中,经常会使用Python之对DataFrame的多列数据运用apply函数操作通过上述操作可以快速综合多列数据得到相应结果。

    如果得到的结果只有一个数,则可以直接赋值到DataFrame中的新字段,但是我在分析过程中往往会遇到,函数结果为元组(例如得到两个字段),此时需要将结果分别赋值到DataFrame中的两个新字段,否则需要两次运用apply函数赋值两次。经过搜索,可以通过下述方法得到解决。


     一、dataframe一次性apply赋值两列数据

    apply运用函数时,增加字段:result_type='expand',示例如下:

     

     此时如果想通过函数,同时得到两列数据,如下函数:

    通过如下方法,则可同时得到新增两列函数

     

     

    除了赋值到新的两列,也可以覆盖之前拥有的字段,结果如下示例:

     

    同时,如果已经得到了元组形式的字段,也可以通过下列方法,将其赋值到新增的两列字段中,


    二、通过apply(pd.Series)实现将tuple进行分列

    df = pd.DataFrame({'a':[1,2], 'b':[(1,2), (3,4)]})

     df[['b1', 'b2']] = df['b'].apply(pd.Series)


     同样地,放方向则可以将两列数据合并为一个元组列,通过apply(tuple)实现将多列合成一列

    df['c'] = df[['b1','b2']].apply(tuple,axis=1)

  • 相关阅读:
    OSError: cannot open resource(pillow错误处理)
    boost 库中文教程
    博客案例
    requests模块
    浅析Python中的struct模块
    面试基础知识点总结
    ant安装、环境变量配置及验证
    TestNG学习-001-基础理论知识
    selenium 常见面试题以及答案
    HTML5
  • 原文地址:https://www.cnblogs.com/feigebaqi/p/12156155.html
Copyright © 2011-2022 走看看