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

回答編集履歴

1

Trueの数を数えるにはpandas.Series.sumが使えます。

2019/12/03 10:29

投稿

nomuken
nomuken

スコア1627

answer CHANGED
@@ -9,18 +9,38 @@
9
9
  '1111|llll'
10
10
  ]})
11
11
 
12
+
12
- print(df['生年月日'].str.find('|') !=-1)
13
+ a = df['生年月日'].str.find('|') !=-1
14
+
15
+ print(type(a))
13
16
  """
17
+ <class 'pandas.core.series.Series'>
18
+ """
19
+
20
+ print(a)
21
+ """
14
22
  0 False
15
23
  1 True
16
24
  2 False
17
25
  3 True
18
26
  """
19
27
 
20
- print(df[df['生年月日'].str.find('|') !=-1])
28
+ print(a.sum())
21
29
  """
30
+ 2
31
+ """
32
+
33
+ print(df[a])
34
+ """
22
35
  生年月日
23
36
  1 |||||||||
24
37
  3 1111|llll
25
38
  """
26
- ```
39
+ ```
40
+ ---
41
+ > こちらTrueの数をカウントする方法はありますでしょうか???
42
+
43
+ `pandas.Series.sum`を使ってください。
44
+
45
+ `df['生年月日'].str.find('|') !=-1`の演算結果はpandas.Series型です。
46
+ sum関数はTrueを1、Falseを0として合計しますのでこれでTrueの数を数えられます。