Словарь Python удалить точки
У меня есть несколько CSV, которые мне нужно импортировать в MangoDB. У этих csv есть точка в заголовке, которая терпит неудачу, когда я вставляю их в MangoDB. по-видимому, они не допускают точек в ключах. Как я могу удалить точки? я не могу изменить CSV, так как CSV загружаются во время выполнения
df = pd.read_csv(filepath) #csv file which you want to import
records_ = df.to_dict(orient = 'records')
print(records_)
result = db.matchstats.insert_many(records_ )
1 ответ
Вы конвертируете свои данные в словарь здесь:
records_ = df.to_dict(orient = 'records')
Таким образом, вы можете просто применить словарь понимания (я предполагаю, работая над словарем keys
здесь, согласно вашему вопросу.) Вы можете просто использовать регулярные выражения для замены отдельных элементов.
Например (обратите внимание, что это предполагает Py 3):
import re
records_ = {re.sub(r"\.+", "", k):v for k,v in records_.items()} # replace one or more stops using re.sub
Однако общий подход к простой замене точек кажется опасным, поскольку он может привести к дублированию ключей / удаленным ключам; Вы можете пересмотреть это на основе ваших данных.