Dostępne podstawowe typy danych to te, które są oferowane przez numpy. Spójrz na listę documentation.
Niewłączone do tego zestawu są formaty datetime (np. datetime64
), dla których dodatkowe informacje można znaleźć w dokumentacji pandas i numpy.
Meta-argument dla beczek z danymi cząstkowymi zwykle oczekuje pustej ramki danych pandy przechowującej definicje kolumn, indeksów i dtypów.
Jednym ze sposobów, aby zbudować taką DataFrame jest:
import pandas as pd
import numpy as np
meta = pd.DataFrame(columns=['a', 'b', 'c'])
meta.a = meta.a.astype(np.int64)
meta.b = meta.b.astype(np.datetime64)
Jest to również sposób na dostarczenie dtype do konstruktora dataframe Pandy, jednak nie jestem pewien, w jaki sposób, aby zapewnić ich do poszczególnych kolumn każdy. Jak widać, możliwe jest podanie nie tylko "nazwy" dla typów danych, ale także rzeczywistego numty dtype.
Odnośnie ostatniego pytania, typem, którego szukasz, jest "obiekt". Na przykład:
import pandas as pd
class Foo:
def __init__(self, foo):
self.bar = foo
df = pd.DataFrame(data=[Foo(1), Foo(2)], columns=['a'], dtype='object')
df.a
# 0 <__main__.Foo object at 0x00000000058AC550>
# 1 <__main__.Foo object at 0x00000000058AC358>