- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有两个特征排名
和评级
,针对不同类别下的不同产品ID,这些特征是在不同日期从电子商务网站上抓取的。
此处提供示例数据框:
import pandas as pd
import numpy as np
import warnings; warnings.simplefilter('ignore')
from sklearn.preprocessing import MinMaxScaler
from sklearn.preprocessing import StandardScaler
from sklearn.preprocessing import RobustScaler
df=pd.read_csv('https://raw.githubusercontent.com/amanaroratc/hello-world/master/testdf.csv')
df.head()
category bid date rank ratings
0 Aftershave ASCDBNYZ4JMSH42B 2021-10-01 61.0 462.0
1 Aftershave ASCDBNYZ4JMSH42B 2021-10-02 69.0 462.0
2 Aftershave ASCDBNYZ4JMSH42B 2021-10-05 89.0 463.0
3 Aftershave ASCE3DZK2TD7G4DN 2021-10-01 309.0 3.0
4 Aftershave ASCE3DZK2TD7G4DN 2021-10-02 319.0 3.0
我想使用 sklearn 中的 MinMaxScaler()
标准化 rank
和 ratings
。
我试过了
cols=['rank','ratings']
features=df[cols]
scaler1=MinMaxScaler()
df_norm[['rank_norm_mm', 'ratings_norm_mm']] = scaler1.fit_transform(features)
这对整个数据集进行标准化。我想使用 groupby
对每个特定日期的每个类别执行此操作。
最佳答案
使用GroupBy.apply
:
file = 'https://raw.githubusercontent.com/amanaroratc/hello-world/master/testdf.csv'
df=pd.read_csv(file)
from sklearn.preprocessing import MinMaxScaler
cols=['rank','ratings']
def f(x):
scaler1=MinMaxScaler()
x[['rank_norm_mm', 'ratings_norm_mm']] = scaler1.fit_transform(x[cols])
return x
df = df.groupby(['category', 'date']).apply(f)
另一个解决方案:
file = 'https://raw.githubusercontent.com/amanaroratc/hello-world/master/testdf.csv'
df=pd.read_csv(file)
from sklearn.preprocessing import MinMaxScaler
scaler1=MinMaxScaler()
cols=['rank','ratings']
df= df.join(df.groupby(['category', 'date'])[cols]
.apply(lambda x: pd.DataFrame(scaler1.fit_transform(x), index=x.index))
.add_prefix('_norm_mm'))
关于python - sklearn MinMaxScaler() 与 groupby pandas,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69476352/
我正在使用从 Lynda.com 获取的 sklearn MinMaxScaler 代码来缩放预测代码的数据集。特征范围应该是 (0,1),但我注意到我的试验数据中有些列大于 1。我相信这导致我的预测
我正在尝试规范化 df 并保存列和行索引/标题。 Sym1 Sym2 Sym3 Sym4 1 1 1 1 2 8 1 3 3 2 9
现在,我的数据在一个 2 x 2 numpy 数组中。如果我要在数组上使用 MinMaxScaler fit_transform,它将逐列对其进行归一化,而我希望将整个 np 数组一起归一化。有办法吗
现在我一直在解决扩展新数据的问题。在我的方案中,我已经训练并测试了模型,所有 x_train 和 x_test 都使用 sklearn.MinMaxScaler() 进行了缩放。然后,应用于实时过程,
我有一个包含 5 个特征的数据集。其中两个特征非常相似,但不具有相同的最小值和最大值。 ... | feature 2 | feature 3 | ... ----------------------
关闭。这个问题需要更多focused .它目前不接受答案。 想改善这个问题吗?更新问题,使其仅关注一个问题 editing this post . 去年关闭。 Improve this questio
我想使用MinMaxScaler缩放Pandas dataFrame中的某些(但不是全部)列。我该怎么做? 最佳答案 由于sklearn> = 0.20,您可以使用Column Transformer
假设我有以下数据框 +---+-----+-------+ |day| time| result| +---+-----+-------+ | 1| 6 | 0
在 sklearn 的 MinMaxScaler 的早期版本中,人们可以指定缩放器对数据进行标准化的最小值和最大值。换句话说,以下情况是可能的: from sklearn import preproc
我想将每个 channel (R、G、B)的图像像素值标准化到范围 [0, 1]。 最小示例 #!/usr/bin/env python import numpy as np import scipy
我目前正在预处理我的数据,我知道我必须使用与我的训练集和测试集相同的缩放参数。然而,当我应用 sklearn 库中的 transform 方法时,我注意到一些奇怪的事情。 我首先在训练集上使用了 pr
我有三个数据框,每个数据框都使用 MinMaxScaler() 单独缩放。 def scale_dataframe(values_to_be_scaled) values = values_t
我像这样使用 sklearn MinMaxScaler()。 from sklearn.preprocessing import MinMaxScaler sc = MinMaxScaler() tr
我想将 PySpark 的 MinMaxScalar 应用于 PySpark 数据框 df 的多列。到目前为止,我只知道如何将其应用于单个列,例如x。 from pyspark.ml.feature
我有 1320 个训练样本(海面温度),每个样本都是一个二维数组(160,320),因此最终数组的形状为(1320,160,320)。我想使用 MinMaxScaler() 将它们标准化为 0 到 1
所以,我有这个疑问,并一直在寻找答案。所以问题是当我使用时, from sklearn import preprocessing min_max_scaler = preprocessing.MinM
我根据它的列缩放了一个矩阵,如下所示: scaler = MinMaxScaler(feature_range=(-1, 1)) data = np.array([[-1, 2], [-0.5, 6]
我正在尝试使用 sklearn.preprocessing.MinMaxScaler 来缩放使用 Keras 构建的 RNN 的 y 值 from sklearn.preprocessing impo
我正在尝试使用 sklearn 中的 preprocessing 将一些数字缩放到 0 - 1 的范围内。这就是我所做的: data = [44.645, 44.055, 44.54, 44.04,
我想在多个 pandas DataFrame 上“一起”应用 MinmaxScaler。这意味着我希望缩放器对这些列中的所有数据执行,而不是对每一列单独执行。 我的 DataFrame 有 20 列。
我是一名优秀的程序员,十分优秀!