如何将 pandas 数据框转换为命名元组
How to convert a pandas dataframe to namedtuple
如何将 pandas 数据框转换为命名元组?此任务正在进行多处理工作。
def df2namedtuple(df):
return tuple(df.row)
Dan 在 https://groups.google.com/forum/#!topic/pydata/UaF6Y1LE5TI
中的回答
from collections import namedtuple
def iternamedtuples(df):
Row = namedtuple('Row', df.columns)
for row in df.itertuples():
yield Row(*row[1:])
itertuples
有选项 name
和 index
。您可以使用它们 return 精确输出作为您发布的函数:
样本 df:
df:
A B C D
0 32 70 39 66
1 89 30 31 80
2 21 5 74 63
list(df.itertuples(name='Row', index=False))
Out[1130]:
[Row(A=32, B=70, C=39, D=66),
Row(A=89, B=30, C=31, D=80),
Row(A=21, B=5, C=74, D=63)]
如何将 pandas 数据框转换为命名元组?此任务正在进行多处理工作。
def df2namedtuple(df):
return tuple(df.row)
Dan 在 https://groups.google.com/forum/#!topic/pydata/UaF6Y1LE5TI
中的回答from collections import namedtuple
def iternamedtuples(df):
Row = namedtuple('Row', df.columns)
for row in df.itertuples():
yield Row(*row[1:])
itertuples
有选项 name
和 index
。您可以使用它们 return 精确输出作为您发布的函数:
样本 df:
df:
A B C D
0 32 70 39 66
1 89 30 31 80
2 21 5 74 63
list(df.itertuples(name='Row', index=False))
Out[1130]:
[Row(A=32, B=70, C=39, D=66),
Row(A=89, B=30, C=31, D=80),
Row(A=21, B=5, C=74, D=63)]