Я создаю объект Pandas DataFrame с использованием конструктора DataFrame. Мои данные - это список списков и категориальных данных. Когда я передаю индекс конструктору, мой класс категориальных данных сбрасывается с помощью значений NaN. Что тут происходит? Заранее спасибо!Конструктор Pandas DataFrame вводит NaN при включении аргумента индекса
Пример:
import pandas as pd
import numpy as np
a = pd.Series(['a','b','c'],dtype="category")
b = pd.Series(['a','b','c'],dtype="object")
c = pd.Series(['a','b','cc'],dtype="object")
A = pd.DataFrame({'A':a,'B':[1,2,3]},index=["0","1","2"])
AA = pd.DataFrame({'A':a,'B':[1,2,3]})
B = pd.DataFrame({'A':b,'C':[4,5,6]})
print("DF A:")
print(A)
print("\nDF A, without specifying an index in the constructor:")
print(AA)
print("\nDF B:")
print(B)
Для других, читающих эту статью, в документации четко говорится об этой проблеме: «... Таким образом, диктатор серии плюс конкретный индекс будет отбрасывать все данные, не соответствующие до индекс ssed. ... "От: http://pandas.pydata.org/pandas-docs/stable/dsintro.html#dataframe –