gpt4 book ai didi

python - 将 Pandas 数据框转换为命名元组列表

转载 作者:行者123 更新时间:2023-12-04 17:06:19 26 4
gpt4 key购买 nike

这个问题在这里已经有了答案:





How to convert a pandas dataframe to namedtuple

(2 个回答)


1年前关闭。




我正在寻找最有效的方式来转换 pandas DataFrame进入键入的列表 NamedTuple - 下面是一个带有预期输出的简单示例。
我想获得与数据框中定义的类型一致的正确类型转换。

from typing import NamedTuple
import pandas as pd

if __name__ == "__main__":
data = [["tom", 10], ["nick", 15], ["juli", 14]]
People = pd.DataFrame(data, columns=["Name", "Age"])
Person = NamedTuple("Person", [("name", str), ("age", int)])
# ...
# ...
# expected output
# [Person(name='tom', age=10), Person(name='nick', age=15), Person(name='juli', age=14)]

最佳答案

使用 DataFrame.itertuples name参数和省略索引添加 index=false :

tup = list(people.itertuples(name='Person', index=False))
print(tup)
[Person(Name='tom', Age=10), Person(Name='nick', Age=15), Person(Name='juli', Age=14)]

如果需要小写值 nameage在命名元组中添加 rename :
tup = list(people.rename(columns=str.lower).itertuples(name='Person', index=False))
print(tup)
[Person(name='tom', age=10), Person(name='nick', age=15), Person(name='juli', age=14)]

关于python - 将 Pandas 数据框转换为命名元组列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58975738/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com