我有一个数据帧,看起来是这样的:
dict = {'companyId': {0: 198236, 1: 198236, 2: 900814, 3: 153421, 4: 153421, 5: 337815},
'region': {0: 'Europe', 1: 'Europe', 2: 'Asia-Pacific', 3: 'North America', 4: 'North America', 5:'Africa'},
'value': {0: 560, 1: 771, 2: 964, 3: 217, 4: 433, 5: 680},
'type': {0: 'actual', 1: 'forecast', 2: 'actual', 3: 'forecast', 4: 'actual', 5: 'forecast'}}
df = pd.DataFrame(dict)
companyId region value type
0 198236 Europe 560 actual
1 198236 Europe 771 forecast
2 900814 Asia-Pacific 964 actual
3 153421 North America 217 forecast
4 153421 North America 433 actual
5 337815 Africa 680 forecast
我似乎想不出一种方法来根据以下条件过滤某些行:
如果在相同的companyId
下有两个条目,就像198236
和153421
的情况一样,我只想保留type
是actual
的条目.
如果companyId
以下只有一个条目,就像337815
和900814
的情况一样,我希望保留该行,而不考虑列type
中的值.
有谁知道该怎么做吗?