首页 > 移动平台 > 详细

pandas之dataframe踩坑指南(一)---apply(func)

时间:2019-12-04 16:15:14      阅读:180      评论:0      收藏:0      [点我收藏+]

 

技术分享图片

 

 

import pandas as pd
data = pd.read_csv(r"test数据.csv", engine="python",
                   encoding="utf-8")

def pprint(row):
    row["extra"]=1
    print(row)
    return row

data = data.apply(lambda x: pprint(x), axis=1)
print(data)

技术分享图片

 apply在第一列/行上调用func两次,以决定是否可以进行某些优化。

直接拿print使用,就不会出现 apply在第一列/行上调用func两次的情况。

data = data.apply(lambda x: print(x), axis=1)

技术分享图片

我猜测先运行第一行式为了设置分配内存空间。

解决方案:

flag=False

def pprint(row):
    global flag

    if flag:
        row["extra"]=1
        print(row)
        else:
        flag=True
  
    return row
data = data.apply(lambda x: pprint(x), axis=1) print(data)

技术分享图片

 

 

 

 

 

pandas之dataframe踩坑指南(一)---apply(func)

原文:https://www.cnblogs.com/wqbin/p/11982099.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!