我是 Pandas 的新手,因此也许我在问一个非常愚蠢的问题。通常, Pandas 中数据帧的初始化是按列的,在这里我将dict用列名的键和相同长度的类似列表的对象的值放入。
但是我很想在不动态连接行的情况下按行初始化。说我有一个namedtuple列表,是否有优化的操作可以直接从中给我一个 Pandas 数据框?
非常感谢
最佳答案
您想要的功能是from_records。
对于namedtuple
实例,除了namedtuple列表之外,还必须将namedtuple的_fields
属性传递给columns
的from_records
参数:
df = pd.DataFrame.from_records(
[namedtuple_instance1, namedtuple_instance2],
columns=namedtuple_type._fields
)
如果您有字典,可以将其直接用作
df = pd.DataFrame.from_records([dict(a=1, b=2), dict(a=2, b=3)])
关于python-2.7 - Pandas :一种使用namedtuple列表初始化数据帧的干净方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20012507/