DataFrame.itertuples(self, index=True, name='Pandas') [source]
将DataFrame行迭代为namedtuple。
参数: | index : 如果为True, 则将索引作为元组的第一个元素返回。 name : 返回的namedtuple的名称, 或者返回 |
返回值: | iterator 一个对象,用于遍历DataFrame中每一行的namedtuple, 第一个字段可能是索引,而后面的字段是列值。 |
Notes
如果列名是无效的Python标识符,重复出现或以下划线开头,则列名将重命名为位置名。具有大量列(> 255)时,将返回常规元组。
例子
>>> df = pd.DataFrame({'num_legs': [4, 2], 'num_wings': [0, 2]},
... index=['dog', 'hawk'])
>>> df
num_legs num_wings
dog 4 0
hawk 2 2
>>> for row in df.itertuples():
... print(row)
...
Pandas(Index='dog', num_legs=4, num_wings=0)
Pandas(Index='hawk', num_legs=2, num_wings=2)
通过将index参数设置为False,我们可以删除索引作为元组的第一个元素:
>>> for row in df.itertuples(index=False):
... print(row)
...
Pandas(num_legs=4, num_wings=0)
Pandas(num_legs=2, num_wings=2)
随着名称的参数设置,我们为取得namedtuples设置自定义名称:
>>> for row in df.itertuples(name='Animal'):
... print(row)
...
Animal(Index='dog', num_legs=4, num_wings=0)
Animal(Index='hawk', num_legs=2, num_wings=2)