回答編集履歴

1

別解

2018/05/12 02:16

投稿

KSwordOfHaste
KSwordOfHaste

スコア18392

test CHANGED
@@ -37,3 +37,41 @@
37
37
  plt.show()
38
38
 
39
39
  ```
40
+
41
+
42
+
43
+ ---
44
+
45
+ 追記:別解として「count」は数える対象外のもの(欠損値というのでしょうか)は除外してくれるので、以下のように1~9を追加する際にcount列を欠損値にしてカウントで集約してもできるみたいです。こちらの方が素直かもしれません。(countが数値フィールドなので欠損値は何になるのだろうとdf2を見たらNANになっているようで納得の動作でした)
46
+
47
+
48
+
49
+ ```python
50
+
51
+ import pandas as pd
52
+
53
+ import matplotlib.pyplot as plt
54
+
55
+
56
+
57
+ df = pd.DataFrame([1,1,2,2,2,4,5,8,8,9], columns=['num'])
58
+
59
+ df['count'] = 1
60
+
61
+
62
+
63
+ df2 = pd.DataFrame([[i+1] for i in range(9)], columns=['num'])
64
+
65
+ df2 = df.append(df2)
66
+
67
+
68
+
69
+ num_cnt = df2.pivot_table(values = 'count', index = 'num', aggfunc = 'count')
70
+
71
+ num_cnt.plot.bar()
72
+
73
+
74
+
75
+ plt.show()
76
+
77
+ ```