Pandas没有像预期的那样被命名为元组?

2024-04-23 23:26:00 发布

您现在位置:Python中文网/ 问答频道 /正文

使用Pandas文档中的这个页面,我想将CSV读入一个dataframe,然后将这个dataframe转换成一个命名元组的列表。在

https://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.itertuples.html?highlight=itertuples

我运行了下面的代码。。。在

import pandas as pd

def csv_to_tup_list(filename):
    myfile = filename
    df = pd.read_csv(myfile,sep=',')
    df.columns = ["term", "code"]
    tup_list = []
    for row in df.itertuples(index=False, name="Synonym"):
         tup_list.append(row)
    return (tup_list)

test = csv_to_tup_list("test.csv")
type(test[0]) 

。。。返回的类型是pandas.core.frame.Synonym,不是名为tuple的。这是它的工作原理,还是我做错了什么?在

我的CSV数据只是两列数据:

^{pr2}$

例如。在


Tags: csvtotestdataframepandasdffilenamemyfile
1条回答
网友
1楼 · 发布于 2024-04-23 23:26:00

“命名元组”不是类型。namedtuple是一个类型的工厂。pandas.core.frame.Synonym是它为此调用创建的类型,使用您选择的名称

for row in df.itertuples(index=False, name="Synonym"):
#                                     ^^^^^^^^^^^^^^

这是预期的行为。在

相关问题 更多 >