我有一个数据表框架创建为:
comidas_gen_dt = dt.Frame({
'country':list('ABCDE'),
'id':[1,2,3,4,5],
'egg':[10,20,30,5,40],
'veg':[30,40,10,3,5],
'fork':[5,10,2,1,9],
'beef':[90,50,20,None,4]})
我创建了一个自定义函数来从框架中选择所需列的列表DT
,
def pydt_select_cols(DT, *rmcols):
return DT[:, *dt_cols]
因此,这是从 DT 中删除列的推荐语法:
DT[:, f[:].remove([f.a, f.b, f.c])
按照上面的 DT 语法,我创建了另一个自定义函数来将列列表保留为
def pydt_remove_cols(DT, *rmcols):
dt_cols = [*rmcols]
return DT[:, f[:].remove(dt_cols)]
我正在执行该功能
pydt_remove_cols(comidas_gen_dt, 'id', 'country', 'egg')
它抛出了错误
TypeError:计算列不能用于
.remove()
你能帮我怎么做吗?