私はdfに列を作成しようとしています。これは、指定された時刻の水が泳ぐことができる品質であるかどうかを教えてくれます。私は幾何学的な意味で壁に当たっています。複雑な条件付きの列を作成する(幾何平均)Python
これは、私が働いている何のようなミニサンプルDFです:
df = pd.DataFrame({'Site': ['A', 'A', 'A', 'A', 'A', 'B', 'B', 'B', 'C'], 'EnteroCount': [1733, 4, 20, 150, 70, 1500, 55, 22, 180]})
df["Site"] = df["Site"].astype('category')
これらは、水泳用の水は許容できない作る条件である:
EnteroCount> = 110
OR
5か幾何平均(加重平均)が30より大きいサンプルが多数あります。
「許容」または「許容しない」という値を割り当てるカラムを作成したいとします。これらの条件の両方に基づいて「可能」である。最初の条件は、以下の、しかしgmeanに持ち込む私にできることはそれほど簡単ではありません(またはそれですか?):
df['swim'] = np.where(df['EnteroCount']>=110, 'unacceptable', 'acceptable')
これを効率的に行うことができるか見てみたいです。
幾何平均の計算方法やサンプルの入手方法は不明です。各レコードはサンプルなので、5つ以上の値を持つレコードを30より大きくしたいのですか? – Alexander
「幾何平均を持つ5つ以上のサンプル」は5つのサンプルですか?特定のサイトの幾何平均?そして、あなたはサンプルレベルまたはサイトレベルを決定したいですか? – ayhan
幾何平均が実際に計算されているかについてより多くのデータを提供できますか?それ以外の場合は、np.whereに条件を追加するだけです。 –