Groupby.count
Count the occurrence of values in columns per groups
danfo.Groupby.count() [source]
Parameters: None
Return: DataFrame
Examples
Obtain the number of rows per groups
Node
1
const dfd = require("danfojs-node")
2
3
4
let data ={A: ['foo', 'bar', 'foo', 'bar',
5
'foo', 'bar', 'foo', 'foo'],
6
B: ['one', 'one', 'two', 'three',
7
'two', 'two', 'one', 'three'],
8
C: [1,3,2,4,5,2,6,7],
9
D: [3,2,4,1,5,6,7,8]
10
}
11
12
let df = new dfd.DataFrame(data)
13
14
15
let grp = df.groupby(["A"])
16
let grpColumnC = grp.col(["C"])
17
grpColumnC.count().print()
Copied!
1
╔═══╤═══════════════════╤═══════════════════╗
2
║ │ A │ C_count ║
3
╟───┼───────────────────┼───────────────────╢
4
║ 0 │ foo │ 5 ║
5
╟───┼───────────────────┼───────────────────╢
6
║ 1 │ bar │ 3 ║
7
╚═══╧═══════════════════╧═══════════════════╝
Copied!
Obtain the count for two columns for each group, group by one column
Node
1
const dfd = require("danfojs-node")
2
3
4
let data ={A: ['foo', 'bar', 'foo', 'bar',
5
'foo', 'bar', 'foo', 'foo'],
6
B: ['one', 'one', 'two', 'three',
7
'two', 'two', 'one', 'three'],
8
C: [1,3,2,4,5,2,6,7],
9
D: [3,2,4,1,5,6,7,8]
10
}
11
12
let df = new dfd.DataFrame(data)
13
14
let grp = df.groupby(["A"])
15
16
grp.col(["C","D"]).count().print()
Copied!
1
Shape: (2,3)
2
3
╔═══╤═══════════════════╤═══════════════════╤═══════════════════╗
4
║ │ A │ C_count │ D_count ║
5
╟───┼───────────────────┼───────────────────┼───────────────────╢
6
║ 0 │ foo │ 5 │ 5 ║
7
╟───┼───────────────────┼───────────────────┼───────────────────╢
8
║ 1 │ bar │ 3 │ 3 ║
9
╚═══╧═══════════════════╧═══════════════════╧═══════════════════╝
Copied!
Obtain the count for all columns for each group, group by one column
Node
1
const dfd = require("danfojs-node")
2
3
4
let data ={A: ['foo', 'bar', 'foo', 'bar',
5
'foo', 'bar', 'foo', 'foo'],
6
B: ['one', 'one', 'two', 'three',
7
'two', 'two', 'one', 'three'],
8
C: [1,3,2,4,5,2,6,7],
9
D: [3,2,4,1,5,6,7,8]
10
}
11
12
let df = new dfd.DataFrame(data)
13
14
let grp = df.groupby(["A"])
15
16
grp.count().print()
Copied!
1
╔════════════╤═══════════════════╤═══════════════════╤═══════════════════╤═══════════════════╗
2
║ │ A │ B_count │ C_count │ D_count ║
3
╟────────────┼───────────────────┼───────────────────┼───────────────────┼───────────────────╢
4
║ 0 │ foo │ 5 │ 5 │ 5 ║
5
╟────────────┼───────────────────┼───────────────────┼───────────────────┼───────────────────╢
6
║ 1 │ bar │ 3 │ 3 │ 3 ║
7
╚════════════╧═══════════════════╧═══════════════════╧═══════════════════╧═══════════════════╝
Copied!
Obtain the count for a column for each group, group by two columns
Node
1
const dfd = require("danfojs-node")
2
3
4
let data ={A: ['foo', 'bar', 'foo', 'bar',
5
'foo', 'bar', 'foo', 'foo'],
6
B: ['one', 'one', 'two', 'three',
7
'two', 'two', 'one', 'three'],
8
C: [1,3,2,4,5,2,6,7],
9
D: [3,2,4,1,5,6,7,8]
10
}
11
12
let df = new dfd.DataFrame(data)
13
14
let grp = df.groupby(["A","B"])
15
grp.col(["C"]).count().print()
Copied!
1
╔════════════╤═══════════════════╤═══════════════════╤═══════════════════╗
2
║ │ A │ B │ C_count ║
3
╟────────────┼───────────────────┼───────────────────┼───────────────────╢
4
║ 0 │ foo │ one │ 2 ║
5
╟────────────┼───────────────────┼───────────────────┼───────────────────╢
6
║ 1 │ foo │ two │ 2 ║
7
╟────────────┼───────────────────┼───────────────────┼───────────────────╢
8
║ 2 │ foo │ three │ 1 ║
9
╟────────────┼───────────────────┼───────────────────┼───────────────────╢
10
║ 3 │ bar │ one │ 1 ║
11
╟────────────┼───────────────────┼───────────────────┼───────────────────╢
12
║ 4 │ bar │ three │ 1 ║
13
╟────────────┼───────────────────┼───────────────────┼───────────────────╢
14
║ 5 │ bar │ two │ 1 ║
15
╚════════════╧═══════════════════╧═══════════════════╧═══════════════════╝
Copied!
Obtain the count for two columns for each group, group by two columns
Node
1
const dfd = require("danfojs-node")
2
3
4
let data ={A: ['foo', 'bar', 'foo', 'bar',
5
'foo', 'bar', 'foo', 'foo'],
6
B: ['one', 'one', 'two', 'three',
7
'two', 'two', 'one', 'three'],
8
C: [1,3,2,4,5,2,6,7],
9
D: [3,2,4,1,5,6,7,8]
10
}
11
12
let df = new dfd.DataFrame(data)
13
14
let grp = df.groupby(["A","B"])
15
grp.col(["C","D"]).count().print()
Copied!
1
╔════════════╤═══════════════════╤═══════════════════╤═══════════════════╤═══════════════════╗
2
║ │ A │ B │ C_count │ D_count ║
3
╟────────────┼───────────────────┼───────────────────┼───────────────────┼───────────────────╢
4
║ 0 │ foo │ one │ 2 │ 2 ║
5
╟────────────┼───────────────────┼───────────────────┼───────────────────┼───────────────────╢
6
║ 1 │ foo │ two │ 2 │ 2 ║
7
╟────────────┼───────────────────┼───────────────────┼───────────────────┼───────────────────╢
8
║ 2 │ foo │ three │ 1 │ 1 ║
9
╟────────────┼───────────────────┼───────────────────┼───────────────────┼───────────────────╢
10
║ 3 │ bar │ one │ 1 │ 1 ║
11
╟────────────┼───────────────────┼───────────────────┼───────────────────┼───────────────────╢
12
║ 4 │ bar │ three │ 1 │ 1 ║
13
╟────────────┼───────────────────┼───────────────────┼───────────────────┼───────────────────╢
14
║ 5 │ bar │ two │ 1 │ 1 ║
15
╚════════════╧═══════════════════╧═══════════════════╧═══════════════════╧═══════════════════╝
Copied!
Copy link