Python或Pandas中的这种分箱或分组技术是什么

我刚开始使用Pandas,我了解到处理数据时,通常的做法是将数据分组,创建虚拟变量,甚至在DataFrame中创建新列。然而,我遇到了一些代码行,不明白它们做了什么。这些代码的目的是将一个分类列的数据按年龄分成3列。

ratings_df.loc[(ratings_df['age'] <= 40), 'age_group'] = '40 years and younger'
ratings_df.loc[(ratings_df['age'] > 40) & (ratings_df['age'] < 57), 'age_group'] = 'between 40 and 57 years'
ratings_df.loc[(ratings_df['age'] >= 57), 'age_group'] = '57 years and older'

它并没有创建一个新列或一个新DataFrame,但后来在回归模型中与另一个独立变量’beauty’一起用于训练数据

lm = ols('beauty ~ age_group', data = ratings_df).fit()

它做了什么?


回答:

可以更容易地将这些代码行视为如下形式:

condition = (ratings_df['age'] <= 40)
column_name = 'age_group'
new_value = '40 years and younger'
ratings_df.loc[condition, column_name] = new_value

简而言之,对于ratings_df['age'] <= 40为真的每一行,名为age_group的列被设置为新值"40 years and younger"

Related Posts

使用LSTM在Python中预测未来值

这段代码可以预测指定股票的当前日期之前的值,但不能预测…

如何在gensim的word2vec模型中查找双词组的相似性

我有一个word2vec模型,假设我使用的是googl…

dask_xgboost.predict 可以工作但无法显示 – 数据必须是一维的

我试图使用 XGBoost 创建模型。 看起来我成功地…

ML Tuning – Cross Validation in Spark

我在https://spark.apache.org/…

如何在React JS中使用fetch从REST API获取预测

我正在开发一个应用程序,其中Flask REST AP…

如何分析ML.NET中多类分类预测得分数组?

我在ML.NET中创建了一个多类分类项目。该项目可以对…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注