私はパンダシリーズを持っています。ノーマルディストリビューションになるようにログ変換する必要があります。しかし、値= 0と値1(0〜4000)があるため、まだ変換できません。だから私はシリーズを最初に正規化したい。 StandardScaler(scikit-learn)、Z-score標準化、Min-Maxスケーリング(正規化)について聞いたことがあります。 後でデータをクラスタリングしたいのですが、これが最善の方法でしょうか? StandardScalerとZ-scoreの標準化では、平均、分散などを使用しています。対数に変換するパンダシリーズ:ログノーマライズ
2
A
答えて
-1
、あなたは正の値を必要とし、その値(-1,1]のあなたの範囲は、正規化に変換(0,1]
のようなデータフレームでimport numpy as np
import pandas as pd
df = pd.DataFrame(np.random.uniform(-1,1,(10,1)))
df['norm'] = (1+df[0])/2 # (-1,1] -> (0,1]
df['lognorm'] = np.log(df['norm'])
結果を次のように
0 norm lognorm
0 0.360660 0.680330 -0.385177
1 0.973724 0.986862 -0.013225
2 0.329130 0.664565 -0.408622
3 0.604727 0.802364 -0.220193
4 0.416732 0.708366 -0.344795
5 0.085439 0.542719 -0.611163
6 -0.964246 0.017877 -4.024232
7 0.738281 0.869141 -0.140250
8 0.558220 0.779110 -0.249603
9 0.485144 0.742572 -0.297636
0
あなたのデータが範囲内にあれば(質問でマイナスを失ったと仮定して)、ログ変換はおそらくではありません。少なくとも理論的な観点からは、明らかにが間違っているしてください。
あなたのデータは既に(あまりにも)前処理されていますか?生データを取得できますか? なぜログ変換が助けになると思いますか?
意味のあることが気にかからない場合はlog1p
と呼ぶことができます。これはlog(1+x)
と同じで、(-1;∞)と同じです。
関連する問題
- 1. パンダシリーズ
- 2. パンダシリーズ
- 3. パンダシリーズto_record
- 4. パンダシリーズに
- 5. パンダシリーズ名
- 6. パンダシリーズのnumpy diff
- 7. 地図パンダシリーズは
- 8. パンダシリーズextractallエラー
- 9. パンダシリーズのグラブサブストリング
- 10. 「移調」パンダシリーズ
- 11. 使用パンダシリーズ日付
- 12. パンダシリーズ/データフレームの対数
- 13. パンダシリーズの形状は?
- 14. 辞書からパンダシリーズ
- 15. 追加2頭のパンダシリーズは
- 16. パンダシリーズでの要素操作
- 17. パンダシリーズに値を追加
- 18. パンダシリーズの文字列操作
- 19. パンダシリーズと `in`演算子
- 20. パンダシリーズは、このよう
- 21. パンダシリーズbfill前半、ffill後半
- 22. ジオコーダーでパンダシリーズを反復する
- 23. マルチインデックスのパンダシリーズに参加する
- 24. パンダシリーズをnumpy配列に変換する
- 25. パンダシリーズでヘッダーを表示するには?
- 26. パンダシリーズに範囲を埋め込む
- 27. パンダシリーズの前の「行」の値を使用
- 28. 複数のパンダシリーズを反復する
- 29. パンダシリーズの単一ベクトルとの相関
- 30. パンダは私のようなパンダシリーズ持っ
1 <値<1 - データセットが空ですか? :-p –
私のデータは0から4000までで、1より小さい値はログ変換で負になります。私は-infを得るので、ゼロも問題です。これはヒストグラムの問題につながります – Benni