DataFrame 到列表的列表,不更改值的数据类型

pandas

1个回答

写回答

13376682369

2025-06-25 21:10

+ 关注

Python
Python

使用Python中的Pandas库,我们可以轻松地将DataFrame转换为列表的列表,并且保持原始数据类型不变。DataFrame是Pandas库中一个非常强大的数据结构,它类似于excel中的电子表格,可以存储和处理大量结构化数据。

首先,让我们来看一个简单的例子。假设我们有一个包含学生姓名、年龄和成绩的DataFrame,如下所示:

Python

import Pandas as pd

data = {'姓名': ['张三', '李四', '王五'],

'年龄': [18, 20, 19],

'成绩': [85.5, 92.0, 78.5]}

df = pd.DataFrame(data)

我们可以使用tolist()方法将DataFrame转换为列表的列表,并将结果赋值给一个新的变量,如下所示:

Python

list_of_lists = df.values.tolist()

这样,我们就得到了一个列表的列表,每个内部列表对应DataFrame中的一行数据。列表的每个元素保持原始的数据类型,例如字符串、整数或浮点数。

接下来,让我们来看一个更复杂的例子。假设我们有一个包含学生姓名、出生日期和成绩的DataFrame,如下所示:

Python

import Pandas as pd

from datetime import date

data = {'姓名': ['张三', '李四', '王五'],

'出生日期': [date(2000, 5, 10), date(2001, 3, 15), date(2000, 8, 20)],

'成绩': [85.5, 92.0, 78.5]}

df = pd.DataFrame(data)

在这个例子中,我们的DataFrame包含了一个日期类型的列。同样,我们可以使用tolist()方法将DataFrame转换为列表的列表,并保持原始数据类型不变:

Python

list_of_lists = df.values.tolist()

这样,我们就得到了一个列表的列表,其中包含了每个学生的姓名、出生日期和成绩。由于我们没有更改任何数据类型,所以出生日期仍然是日期类型,而不是字符串。

案例代码:

Python

import Pandas as pd

# 创建DataFrame

data = {'姓名': ['张三', '李四', '王五'],

'年龄': [18, 20, 19],

'成绩': [85.5, 92.0, 78.5]}

df = pd.DataFrame(data)

# 将DataFrame转换为列表的列表

list_of_lists = df.values.tolist()

# 打印结果

for row in list_of_lists:

print(row)

以上是将DataFrame转换为列表的列表的方法,通过这种方法,我们可以方便地处理和分析DataFrame中的数据。无论是简单的数据类型还是复杂的数据结构,都可以保持原始的数据类型不变,提供了更多的灵活性和可操作性。使用Pandas库的这一特性,我们可以更好地处理和分析各种数据集。

举报有用(4分享收藏

Copyright © 2025 IZhiDa.com All Rights Reserved.

知答 版权所有 粤ICP备2023042255号