Start by thinking about how you would do it manually: you might start by classifying characters into groups: alphabetic, numerals, punctuation, word terminators (space, newline), other.
Then process each group: Alphabetic wudl be two groups: upper case and lower case, so count those separately. Alphabetic would also be consonants and vowels, so they need counting separately. Numeric digits - count them. And so forth.
When you've worked out how you would approach it manually, start thinking about implementation: do a little bit, test it, and then move on to the next.
Buty your code doesn't do that: it immediately ignores part of the task by converting the input all to lowercase - which means you can't count t6he uppercase characters!
This may help:
How to Write Code to Solve a Problem, A Beginner's Guide[
^]