Battling against ghost Pokemon can be a headache because they have tons of status-inducing moves at their disposal like confuse ray, will-o-wisp and curse.
In general, Ghost type Pokemon have pretty balanced stats, but tend to have higher than average special attack and defensive stats.
Ghost type Pokemon are weak to:
Use attacks of these types to deal double damage against ghost types. It's super effective!
Normal type is immune to ghost type attacks
Use a normal type Pokemon to take zero damage from an opponent's ghost type attacks.
Dark type resists ghost type attacks:
Use a dark type Pokemon to take half damage from an opponent's ghost type attacks. It's not very effective.
Great Pokemon to use against ghost types:
These Pokemon learn super effective attacks or have useful resistances (or both!)
Sableye (dark / ghost)
Weavile (dark / ice)
Hydreigon (dark / dragon)
Tyranitar (dark / rock)
Krookodile (dark / ground)
Read more: The ULTIMATE Pokemon Type Weakness Guide
Good attacks to use against ghost type Pokemon:
Dark pulse (dark)
Night slash (dark)
Shadow ball (ghost)
Shadow claw (ghost)