pandas dataframe转列表

pandas dataframe转列表

pandas dataframe转列表

在数据处理和分析中,Pandas 是一个相当实用的 Python 库。Pandas 的 DataFrame 是一种二维标记数组,具有灵活的数据结构和各种强大的方法,使数据操作更加简单和高效。有时候我们需要将 DataFrame 转换成列表,以便更好地处理数据。本文将详细介绍如何将 Pandas DataFrame 转成列表。

方法一:使用 values 属性转换成二维数组,再转为列表

首先,我们可以使用 Pandas 的 values 属性将 DataFrame 转换成 NumPy 的二维数组,然后再将二维数组转换成列表。下面是具体的步骤:

import pandas as pd

# 创建一个示例 DataFrame
data = {
    'A': [1, 2, 3, 4],
    'B': ['a', 'b', 'c', 'd'],
    'C': [True, False, True, False]
}

df = pd.DataFrame(data)

# 使用 values 属性将 DataFrame 转换成 NumPy 的二维数组
array = df.values.tolist()

print(array)

运行以上代码,结果会输出转换后的列表:

[[1, 'a', True], [2, 'b', False], [3, 'c', True], [4, 'd', False]]

经过以上步骤,我们成功将 Pandas DataFrame 转换成了列表。

方法二:利用 iterrows() 方法逐行转换

第二种方法是使用 Pandas 的 iterrows() 方法,逐行将 DataFrame 转换成列表。这种方法比较灵活,适用于处理行数不是很大的 DataFrame。

下面是详细的代码示例:

import pandas as pd

# 创建一个示例 DataFrame
data = {
    'A': [1, 2, 3, 4],
    'B': ['a', 'b', 'c', 'd'],
    'C': [True, False, True, False]
}

df = pd.DataFrame(data)

# 使用 iterrows() 方法逐行转换成列表
list_data = [list(row) for index, row in df.iterrows()]

print(list_data)

运行以上代码,输出如下:

[[1, 'a', True], [2, 'b', False], [3, 'c', True], [4, 'd', False]]

通过以上方法,我们同样将 Pandas DataFrame 成功转换成了列表。

方法三:利用 DataFrame.values.tolist() 方法直接转换成列表

除了前面介绍的两种方法,Pandas 还提供了一个便捷的方法,即直接使用 DataFrame 的 values.tolist() 方法,将 DataFrame 直接转换成列表。这种方法简洁高效,适用于处理较大的 DataFrame。

下面是具体的代码:

import pandas as pd

# 创建一个示例 DataFrame
data = {
    'A': [1, 2, 3, 4],
    'B': ['a', 'b', 'c', 'd'],
    'C': [True, False, True, False]
}

df = pd.DataFrame(data)

# 直接使用 values.tolist() 方法转换成列表
list_data = df.values.tolist()

print(list_data)

运行以上代码,输出如下:

[[1, 'a', True], [2, 'b', False], [3, 'c', True], [4, 'd', False]]

通过以上三种方法,我们可以灵活地将 Pandas DataFrame 转换成列表,根据不同的需求选择适合的方法进行转换。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程