I have ~6000 data.frames with the same number of columns, but human-labelled headers, meaning there are things like typos, and occasionally an extra word (e.g. what should be address could appear as street_address).
Note that all the column names are fairly distinct (the closest are first_name and last_name), but all the others have no overlap in words
Is there an established 'best practice' for matching the column headers so that they can be organised into one single dataframe?
What I guess so far is to simply match the columns by the number of characters that match (e.g. street_address would probably match correctly to address since 7 characters match)
Is there a better / more established / more reliable way?
Note: I can use either R (preferably dplyr), or python (e.g. pandas) for this (as well as any other libraries in either language)