tablename alias in attribute name
Some suggestions:


black can format your code to be more idiomatic.
flake8 can check your code for remaining non-idiomatic code.
mypy can enforce typing to make it more obvious what the code is meant to do.
Names like a, r, d and dfs are unhelpful. Naming is a hard skill to learn, but is enormously helpful in making code more readable and therefore maintainable.
if not '.' in x: etc looks like it might be a good candidate for a separate function - it doesnt't take too many inputs, returns only one thing (dfs), and is short.
It looks like you are doing a lot of conversions: dataFrame[tableName].values.tolist(), list(…), dict(). I'm not familiar with Pandas, but I expect you can speed things up significantly by not converting values.