如何在python中定义可变数量的列

2024-04-26 13:01:55 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试使用apply函数向python中添加列。 但是,要添加的列数取决于函数的输出 用于apply函数。你知道吗

示例代码:

number_of_columns_to_be_added = 2    
def add_columns(number_of_columns_to_be_added):
         df['n1'],df['n2'] = zip(*df['input'].apply(lambda x : do_something(x, number_of_columns_to_be_added)))

关于如何用编程的方式在= zip( ...部分之前定义丑陋的列部分(df['n1'], ..., df['n696969'])有什么想法吗?你知道吗


Tags: columnsofto函数代码示例numberdf
1条回答
网友
1楼 · 发布于 2024-04-26 13:01:55

我猜zip的输出是一个元组,因此您可以尝试以下方法:

temp = zip(*df['input'].apply(lambda x : do_something(x, number_of_columns_to_be_added)))
for i, value in enumerate(temp, 1):
    key = 'n'+str(i)
    df[key] = value

temp将保存所有条目,然后您iterate通过temp将值分配给具有特定键的dict。希望这符合你的初衷。你知道吗

相关问题 更多 >