If you use groupby, you will get what you want.
d.groupby(['ip', 'useragent']).size()
produces:
ip useragent
192.168.0.1 a 2
b 1
192.168.0.2 b 1
If you use groupby, you will get what you want.
d.groupby(['ip', 'useragent']).size()
produces:
ip useragent
192.168.0.1 a 2
b 1
192.168.0.2 b 1