sklearnのStandardScalerからseveralsメソッドを使用したいと思います。これらのメソッドを、セット全体に適用するのではなく、セットの一部のカラム/フィーチャで使用することは可能ですか?データセットの一部にStandardScalerを適用
例えばセットはdata
です:
data = pd.DataFrame({'Name' : [3, 4,6], 'Age' : [18, 92,98], 'Weight' : [68, 59,49]})
Age Name Weight
0 18 3 68
1 92 4 59
2 98 6 49
col_names = ['Name', 'Age', 'Weight']
features = data[col_names]
私は合うとdata
scaler = StandardScaler().fit(features.values)
features = scaler.transform(features.values)
scaled_features = pd.DataFrame(features, columns = col_names)
Name Age Weight
0 -1.069045 -1.411004 1.202703
1 -0.267261 0.623041 0.042954
2 1.336306 0.787964 -1.245657
を変換しかし、もちろん名前が浮いていませんが、文字列と、私はそれらを標準化する必要はありません。 fit
とtransform
関数は、Age
とWeight
の列にのみどのように適用できますか?
それは動作しますが、私はこの方法で初期値を得るために、「inverse_transform」関数を使用することができません。 ValueError:オペランドをシェイプ(3、)(2、)(3、)と一緒にブロードキャストできませんでした – mitsi
'scaler.inverse_transform(scaled_features [col_names] .values)'は私のために働きます。 – ayhan
ilocを間違って使用している可能性があります。最初のインデクサは行インデックス用です。 – ayhan