Pandas---apply使用

pandas中apply使用

data:
	A	B	C
0	0	1	2
1	3	4	5
2	6	7	8
3	9	10	11
f = lambda x: x + 3
或:
def f(x):
	return x + 3
对所有列操作
data.apply(f)
	A	B	C
0	3	4	5
1	6	7	8
2	9	10	11
3	12	13	14
对单列操作
data['A'] = data['A'].apply(f)
	A	B	C
0	3	1	2
1	6	4	5
2	9	7	8
3	12	10	11
根据单行多个参数得到结果
d = pd.DataFrame(np.arange(12).reshape(6,2), columns=["A", "B"])

def func(a, b):
    print(a, b)
    return "C"

d["C"] = d.apply(lambda x: func(x["A"], x["B"]), axis=1)
将结果返回给列
d = pd.DataFrame(np.arange(12).reshape(6,2), columns=["A", "B"])

def func(a, b):
    print(a, b)
    return "C"

d["C"], d["D"] = zip(*d.apply(lambda x: func(x["A"], x["B"]), axis=1))

d["C"], d["D"] = zip(*d["A"].apply(lambda x: func(x), axis=1))
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值