首页 > 解决方案 > 如何获取数据框行以列出索引号?

问题描述

我有一个问题,假设我有这个数据框:

import pandas as pd
df = pd.DataFrame([[1, 2, 1], [1, 3, 2], [4, 6, 3], [4, 3, 4], [5, 4, 5]], columns=['A', 'B', 'C'])

>> df
   A  B  C
0  1  2  1
1  1  3  2
2  4  6  3
3  4  3  4
4  5  4  5

假设我必须得到 A = 4 的行:

2 4 6 3 和 3 4 3 4

如何将这些数据转换为带有索引号的列表?

保罗

标签: pythonpandas

解决方案


您只希望所有数据都在列表中吗?像这样的东西怎么样:

>>> df.reset_index(drop=False).query('A == 4').values.tolist()
[[2, 4, 6, 3], [3, 4, 3, 4]]

其中索引是每个子列表中的第 0 项,每列的值是每个子列表中的剩余项(即从索引 1 到 3)

使用重置索引reset_index(drop=False)只需将一index列添加到 DataFrame,由您以前索引的任何内容组成,并且可以轻松地将所有这些数据转换为您的列表子列表格式。


推荐阅读