Kir*_*nty 6 python data-analysis dataframe pandas
我有一个包含两列的数据框:
ones zeros
0 6 13
1 8 7
2 11 7
3 8 5
4 11 5
5 10 6
6 11 6
7 7 4
8 9 4
9 4 6
10 7 5
11 6 7
12 9 10
13 14 3
14 7 7
15 7 7
16 9 7
17 7 10
18 9 5
19 12 7
20 4 8
21 6 4
22 11 5
23 9 7
24 3 10
25 7 4
26 6 12
27 9 7
28 7 4
29 9 9
... ... ...
4339 10 9
4340 7 10
4341 6 11
4342 4 6
4343 9 11
4344 5 11
4345 7 9
4346 9 5
4347 11 7
4348 9 10
4349 8 10
4350 6 5
4351 5 8
4352 5 7
4353 5 8
4354 7 13
4355 11 3
4356 6 7
4357 7 6
4358 8 12
4359 8 11
4360 7 11
4361 6 13
4362 8 3
4363 11 8
4364 9 3
4365 6 5
4366 9 6
4367 11 8
4368 4 3
Run Code Online (Sandbox Code Playgroud)
我需要计算行数,其中列下的数字ones
可被整除5
或列下的数字可zeros
被整除3
。
因为这是问题的小节。我已经准备好清洁后的数据框,并且该数据框具有2列和4369行。
我已经尝试过了,但这不是条件“ OR”的解决方案,而是“ AND”的解决方案
ones zeros
0 6 13
1 8 7
2 11 7
3 8 5
4 11 5
5 10 6
6 11 6
7 7 4
8 9 4
9 4 6
10 7 5
11 6 7
12 9 10
13 14 3
14 7 7
15 7 7
16 9 7
17 7 10
18 9 5
19 12 7
20 4 8
21 6 4
22 11 5
23 9 7
24 3 10
25 7 4
26 6 12
27 9 7
28 7 4
29 9 9
... ... ...
4339 10 9
4340 7 10
4341 6 11
4342 4 6
4343 9 11
4344 5 11
4345 7 9
4346 9 5
4347 11 7
4348 9 10
4349 8 10
4350 6 5
4351 5 8
4352 5 7
4353 5 8
4354 7 13
4355 11 3
4356 6 7
4357 7 6
4358 8 12
4359 8 11
4360 7 11
4361 6 13
4362 8 3
4363 11 8
4364 9 3
4365 6 5
4366 9 6
4367 11 8
4368 4 3
Run Code Online (Sandbox Code Playgroud)
我需要OR条件的解决方案
比较模5
并3
与0
通过和过滤boolean indexing
与|
按位OR
:
df = df[(df['ones'] % 5 == 0) | (df['zeros'] % 3 == 0)]
print (df)
ones zeros
5 10 6
6 11 6
9 4 6
13 14 3
26 6 12
29 9 9
4339 10 9
4342 4 6
4344 5 11
4345 7 9
4351 5 8
4352 5 7
4353 5 8
4355 11 3
4357 7 6
4358 8 12
4362 8 3
4364 9 3
4366 9 6
4368 4 3
Run Code Online (Sandbox Code Playgroud)
如果需要计算匹配值的数量:
out = ((df['ones'] % 5 == 0) | (df['zeros'] % 3 == 0)).sum()
print (out)
20
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
70 次 |
最近记录: |