2016-07-13 12 views
0

私は患者とのリストを持っています。各患者は、値を有する(n×m)マトリックスを有する。リスト要素としてマトリックスを持つリストのStandardScaler

enter image description here

は今、私はStandardScalerを使用して平均値/ STDの全患者を介してデータを正規化します。

問題は明らかにいくつかのリスト項目を含むことができないということです。

このコマンドを使用する可能性がありますか、forループで手作業で行う必要がありますか?

乾杯

p.s: 私はStandardScalerはおそらく唯一の配列で働いている間、これは行列のサイズが原因である

ValueError: setting an array element with a sequence. 

を取得します。

+1

最小限の例はありますか? – Ohumeronen

+0

この関数が複数のリストをパラメータとしてサポートしていない場合は、リスト内包表記を使用できます。あなたの関数呼び出しは何ですか? – Ohumeronen

+0

こんにちは、応答ありがとう。私は理解のためにマトリックスの絵を追加しました。はい、1つのアイデアは、すべての値をマージし、その後、StandardScalerを行い、元のリストの長さで値をもう一度分けていました。しかし、私は、StandardScalerを複数のリストに役立てることで、より良い解決策を望んでいました。関数呼び出しは:StandardScaler()。fit(PatientData); StandardScaler.transform(PatientData) –

答えて

1

は、あなたがこのような患者データ行列の配列があるとします。

my_patient_data_X 

次に、あなたがこれを行うことができます:

my_patient_data_X = [StandardScaler().fit_transform(X) for X in my_patient_data_X] 

は、このあなたが望むものを達成しませんか?

+1

これは簡単でした。どうもありがとう。私は自然に私に来るために、Pythonでもっと時間が必要です。良い一日を。 –

+0

私は助けてくれると嬉しいです。 – Ohumeronen

関連する問題