Объединение нескольких файлов CSV с именами столбцов с учетом регистра с помощью Python - PullRequest
0 голосов
/ 05 августа 2020

У меня есть несколько файлов в папке с одинаковыми данными столбца. Однако для некоторых файлов имя столбца находится в нижнем регистре, а для остальных - в верхнем регистре.

Я использую приведенный ниже код, чтобы объединить их в один файл

path = r'folder'
file = glob.glob(os.path.join(path, 'Add', "*.csv"))
data = pd.concat((pd.read_csv(f, sep=',', encoding='latin-1') for f in file), ignore_index=True, sort=True)
data['Period'] = '202007' #Period Column is required as string

В отдельных файлах 40 столбцов, но когда я добавляю все файлы через pd.concat, я получаю 81 столбец (40 в верхнем регистре + 40 в нижнем регистре + 1 созданный столбец).

Мне нужен окончательный результат в виде 41 столбца - 40 столбцов в верхнем / нижнем регистре + 1 созданный столбец

Спасибо Sid за помощь concat.

Обновление (типы данных): у меня разные типы данных (int, float, object) в моих данных.

1 Ответ

1 голос
/ 06 августа 2020

Попробуйте преобразовать все имена столбцов в нижний регистр перед объединением фреймов данных:

df.columns = df.columns.str.lower()

Вам также следует унифицировать типы данных. Для этого посмотрите astype

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...