列内の特定の数値に従ってデータをフィルタリングしたい。次に、フィルターの行でグループ化します。そのために私はこのコードを実行しました:
df_data=pd.DataFrame(df_)
for values_in_columns in df_.itertuples(name=None):
if values_in_columns[10] == 1:
count_data_oneDay=df_.groupby([df_['Data'].dt.date])['ValueAnalysisPerDay'].sum()
ただし、この方法では、サイクルは終了せず、グループ化された値はフィルタリングされません。つまり、グループ化されたデータの結果はすべての行になります。
誰かが私を助けてくれますか?
boolean indexing
集計の前に11列目をフィルタリングする必要があると思います。ここsum
でのループitertuples
は必要ありません。
df_ = df_data[df_data.iloc[:, 10] == 1]
df1 = df_.groupby([df_['Data'].dt.date])['ValueAnalysisPerDay'].sum()
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加