Строковые типы данных pandas

Я хочу указать типы данных для pandas read_csv. Вот быстрый взгляд на то, что работает, а затем нет, когда указаны типы. Почему последние не работают?

import io import pandas as pd csv = """foo,1234567,a,1 foo,2345678,b,3 bar,3456789,b,5 """ df = pd.read_csv(io.StringIO(csv), names=["fb", "num", "loc", "x"]) print(df) df = pd.read_csv(io.StringIO(csv), names=["fb", "num", "loc", "x"], dtype=["|S3", "np.int64", "|S1", "np.int8"]) print(df) 

Я обновился, чтобы сделать это намного проще и, надеюсь, более ясным в предложении BrenBarn. Мой реальный набор данных намного больше, но я хотел бы использовать метод для создания типов для всех моих данных при импорте.

One Solution collect form web for “Строковые типы данных pandas”

Как показал Джефф, мой синтаксис был плохим. Названия и типы должны быть заархивированы в список отношений стиля dic. Код ниже работает, но обратите внимание, что вы не можете dtype ширину строки; вы можете определить его только как объект.

 import pandas as pd import io csv = """foo,1234567,a,1 foo,2345678,b,3 bar,3456789,b,5 """ df = pd.read_csv(io.StringIO(csv), names = ["fb", "num", "ab", "x"], dtype = {"fb" : object, "num" : np.int64, "ab" : object, "x" : np.int8}) print(df) 
  • Как добавить суффикс к каждому имени столбца?
  • Как заменить None только пустой строкой с помощью pandas?
  • Python Pandas для R dataframe
  • Python: получить частоту, основанную на двух столбцах (переменных) в pandas dataframe
  • PyInstaller и Pandas
  • Разделение столбца на положительные и отрицательные значения
  • Pandas groupby и qcut
  • Получить первую строку данных в Python Pandas на основе критериев
  • Python - лучший язык программирования в мире.