python pandas函数返回多个值并将其放入列中 [英] python pandas function return multiple values and put them into columns
本文介绍了python pandas函数返回多个值并将其放入列中的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有以下两个功能.第二个有效,但第一个无效.为什么?
i have two functions as below. The second one works but the first one doesn't work. Why?
import pandas as pd
df = pd.DataFrame(data = {'a': [1, 2, 3], 'b': [4, 5, 6]})
def add_subtract_list(a, b):
return [1,2,3,4]
add_subtract_list(5,8)
df[['c','d','x','y']] = df.apply(
lambda row: add_subtract_list(row['a'], row['b']), axis=1)
以下功能起作用.它来自此页面
below function works. It is from this page
import pandas as pd
df = pd.DataFrame(data = {'a': [1, 2, 3], 'b': [4, 5, 6]})
def add_subtract_list(a, b):
return [a + b, a - b]
df[['sum', 'difference']] = df.apply(
lambda row: add_subtract_list(row['a'], row['b']), axis=1)
推荐答案
更新您的函数,使其返回熊猫系列而不是python列表.
Update your function such that it returns a pandas Series instead of a python list.
def add_subtract_list(a, b):
return pd.Series([1,2,3,4])
这篇关于python pandas函数返回多个值并将其放入列中的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文