运用pandas中的apply函数

在写某个程序的过程中,需要对特定三列数据的值做同样的运算,运用到了apply方法,做矢量U运算

import pandas as pd
import datetime

date_list=['date_1','date_2’,'date_3','date_4']   #四个关于日期的变量
data[date_list].fillna(0)   #将缺失值填充为0
def turn_to_workday(date):
    #传入时间参数,将非工作日的日期全部调整到上一个工作日
    if isinstance(date,float)==1:     
        return "-"
    else:
        d=int(date.strftime("%w"))    #返回的表示星期几的数值为字符串格式,转化为整型方便下面的判断;注意0表示星期天。
        if d==0:
            date=date+datetime.timedelta(-2)
        elif d==6:
            date = date +datetime.timedelta(-1)
        else:
            pass
        return date

for v in date_list:
    data[v]=data[v].apply(turn_to_workday)

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值