文字列と浮動小数点数を含むリスト内の特定のカテゴリ文字列に浮動小数点値をどのようにして追加できますか?特定の文字列カテゴリを含むリスト内で浮動小数点数を加算する
たとえば、以下の例では、「CategoryA」の値をどのように合計しますか?
List = [('CategoryA', 6.03), ('CategoryA', 14.97), ('CategoryA', 1.00), ('CategoryX', 4.32), ('CategoryD', 3.60)]
文字列と浮動小数点数を含むリスト内の特定のカテゴリ文字列に浮動小数点値をどのようにして追加できますか?特定の文字列カテゴリを含むリスト内で浮動小数点数を加算する
たとえば、以下の例では、「CategoryA」の値をどのように合計しますか?
List = [('CategoryA', 6.03), ('CategoryA', 14.97), ('CategoryA', 1.00), ('CategoryX', 4.32), ('CategoryD', 3.60)]
tot_sum = 0
for category, val in List:
if(category == "Category A"):
tot_sum += val
これはあなたの変数tot_sum
でList
でカテゴリーAの合計を与えるだろう。
あなたはとてもようにSUM関数を使用することによって、これを達成することができます:
sumfora = sum(x[1] for x in List if x[0] == 'CategoryA')
また、このためにパンダを使用することができます。
>>> import pandas as pd
>>> df = pd.DataFrame(List, columns=['Category', 'Value'])
>>> df
Category Value
0 CategoryA 6.03
1 CategoryA 14.97
2 CategoryA 1.00
3 CategoryX 4.32
4 CategoryD 3.60
>>> df[df['Category'] == 'CategoryA']['Value'].sum()
22.0
それとも、各カテゴリの合計を表示する場合:
>>> df.groupby('Category')['Value'].sum()
Category
CategoryA 22.00
CategoryD 3.60
CategoryX 4.32
Name: Value, dtype: float64
お試しいただいた内容を表示してください。特に動作しなかったのは何ですか?あなたは[mcve]を提供できますか?残念なことに、より多くの情報があれば、この質問は広範に及んでおり、そのように閉じられるでしょう。 –