Я пользуюсь пандами, но я открыт для всех предложений, я не специалист по написанию сценариев, но я полная потеря. Моя цель заключается в следующем:
- Объединение нескольких файлов CSV. Был в состоянии сделать это в Pandas и иметь фрейм данных с объединенным набором данных.
Скриншот того, как выглядит объединенный набор данных
Удалить дублирующиеся столбцы "GEO" после первого набора. Эта последняя часть не позволяет мне использовать df = df.loc[:,~df.columns.duplicated()]
, потому что они технически не дублируются. Повторяющиеся имена столбцов заканчиваются на .1, .2 и т. Д. как я предполагаю, конкат добавляет это. Другая проблема заключается в том, что некоторые столбцы имеют дублированное имя столбца, но являются разными наборами данных. Я использовал первую строку в качестве индекса, поскольку она всегда имеет одинаковые кодированные значения, но эта строка не нужна и будет впоследствии удалена в сценарии. Это моя самая большая проблема прямо сейчас.
Удалите некоторые столбцы, например столбцы с полями. Я использую ~df2.columns.str.startswith
для этого и не имею проблем с этим.
- Заменить пробелы, ":" и ";" с подчеркиванием в первом ряду. Я понятия не имею, как это сделать.
- Вставьте новый столбец, напишите формулу '= TEXT (B1,0)', сделайте это для всего столбца (формула изменится на B2, B3 и т. Д.), Скопируйте столбец и вставьте в качестве значений. Я смог сделать это в openpyxl, хотя у меня были проблемы, и я не смог попробовать окончательный результат из-за проблем с Excel.
source = excel.Workbooks.Open(filename)
excel.Range("C1:C1337").Select()
excel.Selection.Copy()
excel.Selection.PasteSpecial(Paste=constants.xlPasteValues)
Не уверен, что это работает, и хотел знать, возможно ли это в pandas, win32com или мне стоит остаться с openpyxl. Спасибо всем!