假设我有一个DataFrame,其中包含以下列“NAME”、“SURNAME”、“AGE”,我想为每行创建一个对象,并将这些列的值作为其变量。
person = ConvertRow2Object(frame.iloc[0,:]) print person.NAME //outputs Gary
对于具有任何类型的列名和数据类型的任何DataFrame,如何使用通用解决方案来实现这一点?
k4emjkb11#
你可以把整个过程转换成一个numpy rearray,然后对数组中的每条记录进行属性化:
people = frame.to_records() person = people[0] print person.NAME # etc...
使用namedtuple似乎也可以工作:
from collections import namedtuple Person = namedtuple('Person', frame.dtypes.index.tolist()) person = Person(*frame.iloc[0,:]) print person.NAME # etc...
1条答案
按热度按时间k4emjkb11#
你可以把整个过程转换成一个numpy rearray,然后对数组中的每条记录进行属性化:
使用namedtuple似乎也可以工作: