访问数据框熊猫中的列表

问题描述 投票:0回答:1

我正在使用Python中的PANDAS处理数据框。我用pandas.read_csv(...)读取了一个csv文件。在此csv文件中,列'possible_stops'包含列表(此列中的每个单元格都类似于:[ ][str0,str1])。

我想用itertuples()遍历各行,对于每一行,我想访问'possible_stops'列内的列表。但是,此列的dtype为object,当我寻找特定单元格的类型(type(row.possible_stops))时,它将返回str。我认为dtype = ..方法中与read_csv有关,但我不知道该怎么做。

如何将此列内的单元格转换为列表?

非常感谢!

编辑:产生的df看起来像:

latitude longitude gps_speed possible_stops    
1.05869 1574942547  0.0 [['Bapeaume', 2]]
1.05862 1573910439  0.0 [['Bapeaume', 2]]
1.05862 1573910441  0.0 [['Bapeaume', 2]]
1.05862 1573910443  0.0 [['Bapeaume', 2]]
1.05862 1573910445  0.0 [['Bapeaume', 2]]
1.05862 1573910447  0.0 [['Bapeaume', 2]]
python pandas list dataframe
1个回答
0
投票

Pandas数据框中的列中的项目不可能具有数据类型“列表”。在此处查看数据框列的可能数据类型列表:https://pbpython.com/pandas_dtypes.html

因此,当存储在数据框中时,列表不是字符串类型,而是插入列表。但是,仍然可以使用双for循环在数据框的列表中输入项目。例如打印每个项目:

import pandas as pd

data = {'possible_stops':[['str0', 'str1'], ['str2', 'str3']], 'Age':[[20, 21], [19, 18]]} 
df = pd.DataFrame(data) 
for row in df.itertuples():
    for item in row.possible_stops:
        print(item)

这将在创建的数据集中一一打印名称。

© www.soinside.com 2019 - 2024. All rights reserved.