Pandas apply value错误:发送POST请求时输入shape()错误

2024-05-22 09:38:05 发布

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

我尝试在django框架中实现一个API,代码如下:

def worker_label_encoder(df,selected_col):
    le = LabelEncoder()
    enc = le.fit(np.unique(df[selected_col]))
    df[selected_col] = df[selected_col].apply(enc.fit_transform)

当我在Atom上的脚本中尝试时,它工作得很好。 但是,当我使用postman通过这个API发送POST请求时,它返回

^{pr2}$

在这条线上:

^{3}$

怎么了?为什么它在脚本中工作而在post请求中不起作用?在


Tags: django代码le脚本框架apidfencoder
1条回答
网友
1楼 · 发布于 2024-05-22 09:38:05

你的代码中几乎没有错误。在

First apply函数应将第一个参数作为已为其提供整个数据帧的列的值。在

第二,为什么要先做fit,然后再做fit_变换。标准流程是拟合变换或简单拟合变换。您应该检查这个示例here,以了解LabelEncoder是如何工作的。在

如果你想完成你想做的事情,那么有一种更简单的方法

le = LabelEncoder()
le.fit(df.selected_col.values)

# Lable encode target variable
df['selected_col'] = le.transform(
    train_df.selected_col.values)

如果还有其他值,则只需进行转换。无需再次进行fit_变换。在

相关问题 更多 >