python - 使用循环获取数据框列中的列表项

标签 python python-3.x pandas dataframe

我有这样的数据框df:

    date        item
    2019-03-29  [book,pencil]
    ...

我想使用循环获取列表中的每个项目。这是我尝试过的:

    for i in range(len(df)):
        for x in df['attributeName'][i]:
            print(x)

但是我得到了每一个角色。所需的输出是:

    book
    pencil

如何解决这个问题?

最佳答案

df2['item'].apply(pd.Series).unstack().reset_index(drop=True)

更好的选择.. A Common Pitfall: Exploding Columns of Lists

pd.DataFrame(df2['item'].tolist()).unstack().reset_index(drop=True)

输出

0      book
1    pencil
dtype: object

关于python - 使用循环获取数据框列中的列表项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56830117/

相关文章:

python - 如何使用 Pandas 将字符串与数据框中的字符串进行比较?

python - PyYAML 可以按非字母顺序转储 dict 项目吗?

python - 如何使用 Python 打开 Unix 可执行文件?

linux - 如何使用 Python(独立于操作系统)获取 pid 列表和 PID 信息?

python - 即使退出状态非零,也使用 check_output 获取输出

python-3.x - 使用 pywinauto 检查工具中的数据

python - 如何在 python 中设置 HTTP cookie 的 `SameSite` 属性?

python - Scrapy xpath 删除 < 字符后的文本

python - 这是在 Pandas/Python 中更改日期的正确方法吗?

python - 比较数据帧并输出匹配计数