Prepositions don’t necessarily translate one for one. It’s the problem’s cause, no matter which way you look at it.
Consider Latin casus belli. That might be translated at war’s case or case for war. Notice it is not case ∗of war.
Sometimes the English word for looks towards the future, and sometimes it looks towards the past. Here:
Ya ain’t got no cause for complainin’.
It’s looking towards the future, and is equivalent to cause to complain or cause for complaint.
But sometimes English for looks towards the past.
There’s gotta be a cause for this mess. This crap doesn’t happen by accident.
In that situation, for is looking in the past, and could be replaced with behind.
Other forward-looking examples of for include:
This present is for John.
This card is for taking out money from a bank.
Other backward-looking examples of for include:
I did it for my children.
I got four quarters for a dollar.
You have to translate by sense, not by exact word. Not all languages support a for preposition that has so many different senses as English does. Two such examples are Spanish and Portuguese, where you must always figure whether in any given phrase, for=por or for=para.