У меня есть файл, который состоит из трех столбцов: A, B и C с некоторым целым числом.Используя python, допустим, я бы хотел grouby()
столбец 'A' и получить size()
каждой группы с числом больше 4, 6 и 8 в столбце 'B'.Поэтому я реализовал код ниже:
>>> import pandas as pd
>>>
>>> df = pd.read_csv("test.txt", sep="\t")
>>> df
A B C
0 1 4 3
1 1 5 4
2 1 2 10
3 2 7 2
4 2 4 4
5 2 6 6
>>>
>>> out1 = df[df['B'] > 4].groupby(['A']).size().reset_index()
>>> out1
A 0
0 1 1
1 2 2
>>> out2 = df[df['B'] > 6].groupby(['A']).size().reset_index()
>>> out2
A 0
0 2 1
>>> out3 = df[df['B'] > 8].groupby(['A']).size().reset_index()
>>> out3
Empty DataFrame
Columns: [A, 0]
Index: []
>>>
out1
- это вывод, который я хочу.Но для out2
и out3
как получить фрейм данных, аналогичный out1
с нулем, как показано ниже?
out2:
A 0
0 2 1
1 2 0
out3:
A 0
0 2 0
1 2 0
Заранее спасибо.