Когда вы используете from_csv()
, панды будут делать очень много выводов типа.На самом деле, больше, чем другие методы, такие как convert_objects
.Я задал вопрос об этом here
, что в некоторой степени связано.
Я предполагаю, что пользователь переднего плана должен указать тип d для каждого столбца.В этом случае это простой случай:
import numpy as np
import pandas as pd
df = pd.DataFrame({'a':[1, 2, 3], 'b': [4, 5, 6], 'c': [7, 8, 9]},
dtype=int)
list_fields = ['a', 'b', 'c']
list_types = [str, int, np.float64]
for field, dtype in zip(list_fields, list_types):
df[field] = df[field].astype(dtype)
print(df.dtypes)
Если пользователям не нужно указывать dtype всех полей, то, если подумать, я думаю, что это будет совсем другая темао том, как вы фильтруете / обрабатываете пользовательский ввод.