teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

d

2020/05/21 09:37

投稿

tiitoi
tiitoi

スコア21960

answer CHANGED
@@ -1,3 +1,20 @@
1
1
  `pd.set_option('precision', 2)` や `pd.options.display.float_format = '{:.2f}'` は DataFrame や Series を表示する際の小数点の桁数です。つまり、表示する際の見た目を変える設定であるため、内部的には保持している精度 (桁数) は変わりません。
2
2
 
3
- また、df["Age"].std() の返り値は float なので、上記設定も影響しません。
3
+ また、df["Age"].std() の返り値は float なので、上記設定も影響しません。
4
+
5
+ ## サンプル
6
+
7
+ 例えば、性別ごとの平均と標準偏差を求めたい場合
8
+
9
+ 1. groupby() でグループ化
10
+ 1. agg(["mean", "std"]) で集計
11
+
12
+ という手順を踏めばよいです。
13
+
14
+ ```python
15
+ import pandas as pd
16
+ pd.set_option('precision', 2)
17
+ df = pd.DataFrame({"年齢": [21, 22, 31, 41], "性別": ["男", "女", "男", "女"]})
18
+ stat = df.groupby("性別").agg(["mean", "std"])
19
+ stat
20
+ ```