Панды, дублированные столбцы ⇐ Python
-
Anonymous
Панды, дублированные столбцы
У меня есть такой скрипт
импортировать панд как pd из импорта sqlalchemy create_engine импорт psycopg2 db_host = "локальный хост" db_port = "5432" имя_базы = "postgres" db_user = "постгрес" db_password = "постгрес" Connection_string = f"postgresql://{db_user}:{db_password}@{db_host}:{db_port}/{db_name}" двигатель = create_engine (строка_соединения) csv_file = "выбранные_данные.csv" df = pd.read_csv(csv_file) df.columns = df.columns.str.replace('\n', '', regex=True) дублированные_столбцы = df.columns[df.columns.duulated(keep="first")] печать (дублированные_столбцы) df = df.drop(столбцы=дублированные_столбцы) # df = df.groupby(df.columns, axis=1).agg(lambda x: ', '.join(x) if (x.dtypes == object).all() else x.sum()) table_name = "public.selected_data" df.to_sql(table_name, engine, if_exists='replace', index=False) двигатель.dispose() Моя проблема в том, что в файле есть несколько столбцов с одинаковым именем, но они содержат разные значения. Сейчас в моем скрипте написано удалять все повторяющиеся столбцы. Однако мне нужно объединить их в один столбец вместе с их значениями. Но я не могу понять, как это сделать.
У меня есть такой скрипт
импортировать панд как pd из импорта sqlalchemy create_engine импорт psycopg2 db_host = "локальный хост" db_port = "5432" имя_базы = "postgres" db_user = "постгрес" db_password = "постгрес" Connection_string = f"postgresql://{db_user}:{db_password}@{db_host}:{db_port}/{db_name}" двигатель = create_engine (строка_соединения) csv_file = "выбранные_данные.csv" df = pd.read_csv(csv_file) df.columns = df.columns.str.replace('\n', '', regex=True) дублированные_столбцы = df.columns[df.columns.duulated(keep="first")] печать (дублированные_столбцы) df = df.drop(столбцы=дублированные_столбцы) # df = df.groupby(df.columns, axis=1).agg(lambda x: ', '.join(x) if (x.dtypes == object).all() else x.sum()) table_name = "public.selected_data" df.to_sql(table_name, engine, if_exists='replace', index=False) двигатель.dispose() Моя проблема в том, что в файле есть несколько столбцов с одинаковым именем, но они содержат разные значения. Сейчас в моем скрипте написано удалять все повторяющиеся столбцы. Однако мне нужно объединить их в один столбец вместе с их значениями. Но я не могу понять, как это сделать.
Мобильная версия