Вы жалуетесь, что pandas представляет ваше число в с плавающей запятой , а не в целочисленной форме.Coldspeed указывает, что .astype()
может изменить столбец на какой-либо желаемый тип.
Чтобы лучше понять, что панды делают с вашим вводом, посмотрите на:
df.dtypes
Вы хотите, чтобы столбец Capital имел целочисленный тип.
Чтобы избежать необходимости возиться с типами позже, вы можете позаботиться о преобразовании входных данных в int
до построения .кадр данных.Pandas просматривает все значений в столбце и выбирает тип, совместимый со всем набором значений.Так, например, столбец, содержащий [1, 2.5, 3]
, заставит все значения плавать, а не int.
Стоит отметить, что отсутствующие значения могут оказать очень заметное влияние на это.Вы можете захотеть что-то вроде:
df2 = df1.dropna()
Некоторые битовые комбинации FP зарезервированы для использования в качестве NaN
, но, к сожалению, pandas не резервирует maxint
или любое другое целочисленное значение,смоделировать понятие отсутствующих данных.Соответственно, ввод типа [1, None, 3]
будет повышен с int до float.