Como alterar o tipo de dados no MongoDB usando código para pymongo (Python)
Aug 21 2020
Eu carrego o arquivo csv para minha base. Mas a data e outros dados numéricos são apresentados como strings. Em nenhum lugar posso encontrar informações sobre como alterar o tipo de campo. Escreva um exemplo)
Os documentos estão localizados na tabela deste formulário
{
"_id": {
"$oid": "5f3e76dfaca73bedb23ef8a1"
},
"Province/State": null,
"Country/Region": "Afghanistan",
"Lat": "33.93911",
"Long": "67.709953",
"Date": "2020-08-19",
"Value": "37599",
"ISO 3166-1 Alpha 3-Codes": "AFG",
"Region Code": "142",
"Sub-region Code": "34",
"Intermediate Region Code": null
}
Respostas
D.SM Aug 21 2020 at 21:07
Meu palpite é que, ao analisar o arquivo CSV, todos os valores são obtidos como strings. Posteriormente, é isso que você obtém no banco de dados.
Provavelmente, você precisa converter manualmente os valores para o tipo desejado depois de carregá-los do arquivo CSV e antes de inseri-los no MongoDB.
KonstantinIvanov Sep 01 2020 at 19:21
df = pd.read_csv(path, parse_dates=["Date"], dtype={"Lat": "double", "Value": "int32"}, skiprows=[1])
df = df.fillna({"Region Code": 0, "Sub-region Code": 0, "Intermediate Region Code": 0})
df = df.astype({"Region Code": int, "Sub-region Code": int, "Intermediate Region Code": int})
O que significa um erro “Não é possível encontrar o símbolo” ou “Não é possível resolver o símbolo”?
George Harrison ficou chateado por suas letras de 'Hurdy Gurdy Man' de Donovan não terem sido usadas