Filter out elements that occur less times than a minimum threshold

This looks nicer:

{ x: count for x, count in A.items() if count >= min_threshold }

You could remove the keys from the dictionary that are below 3:

for key, cnts in list(A.items()):   # list is important here
    if cnts < min_threshold:
        del A[key]

Which gives you:

>>> A
Counter({'a': 4, 'b': 3})

Build your Counter, then use a dict comprehension as a second, filtering step.

{x: count for x, count in A.items() if count >= min_threshold}
# {'a': 4, 'b': 3}