从 Pandas 数据框架中的行创建一个列表,需要借助 Pandas 的 iloc
方法来确定需要提取的行,再通过列表推导式的方式将提取出的每一行转化成列表元素,最后将所有的列表元素组成一个总的列表。
具体步骤如下:
-
确定需要提取的行的位置。例如,假设我们需要从一个名为
df
的 Pandas 数据框架中提取第2行和第4行,则可以使用以下代码来确定需要的行:rows_needed = [2,4] # 需要提取的行的位置
df.iloc[rows_needed,:] # 提取需要的行其中,
df.iloc[rows_needed, :]
中的:
表示提取该行的所有列。 -
将提取出的行转化成列表元素。可以使用列表推导式(List Comprehension)的方式将每一行转化成一个列表元素。例如,将第2行和第4行转化成列表元素的代码如下:
rows_needed = [2,4] # 需要提取的行的位置
result_list = [list(df.iloc[i,:]) for i in rows_needed] # 将每一行转化成列表元素其中,
[list(df.iloc[i,:]) for i in rows_needed]
表示将需要提取的行转化成列表元素,并返回一个列表。 -
将所有列表元素组成一个总的列表。最后将上一步得到的所有列表元素组成一个总的列表即可。例如,将第2行和第4行转化成列表元素,并组成一个总的列表的完整代码如下:
rows_needed = [2,4] # 需要提取的行的位置
result_list = [list(df.iloc[i,:]) for i in rows_needed] # 将每一行转化成列表元素
final_list = result_list # 将所有列表元素组成一个总的列表
以上是从 Pandas 数据框架中的行创建一个列表的完整攻略,下面是一个实例说明:
假设有如下的 Pandas 数据框架 df
:
name age city
0 John 27 London
1 Bob 23 New York
2 Mary 21 Tokyo
3 Jack 29 Sydney
4 Tom 31 Madrid
如果我们需要从该数据框架中提取第2行和第4行,并转化成列表元素,则可以使用以下代码:
rows_needed = [1,3] # 需要提取的行的位置
result_list = [list(df.iloc[i,:]) for i in rows_needed] # 将每一行转化成列表元素
final_list = result_list # 将所有列表元素组成一个总的列表
执行上述代码后,得到的 final_list
的值为:
[['Bob', 23, 'New York'], ['Jack', 29, 'Sydney']]
其中,final_list
中的每一个子列表都是一个列表元素,包含了提取出的一行的数据。