在python中创建表格的两种方法实例

  • Post category:Python

当使用Python进行数据分析、数据清理等任务时,如果需要将数据存储到表格中,常见的方法是使用表格类库如pandas或上一代的numpy.records等来完成。

下面将介绍在Python中创建表格的两种方法。

方法一:使用numpy.records库创建表格

numpy.records库是一种类似于Python标准库中的namedtuple和collections.namedtuple工具的数据结构,用于创建结构化的ndarray对象,可以被用作类似于表格的数据结构。

示例代码:

import numpy as np

# 创建一个由三个字段(列)组成的dtype
dt = np.dtype([('name', np.unicode_, 16), ('age', 'i4'), ('score', 'f8')])

# 创建一个记录数组,shape为3,每个元素都是一个符合上面创建的dtype的记录
arr = np.zeros(3, dtype=dt)

# 将数据赋值给记录数组
arr['name'] = ['Bob', 'Alice', 'John']
arr['age'] = [23, 28, 33]
arr['score'] = [85.3, 91.2, 79.5]

# 打印记录数组
print(arr)

输出结果为:

[(u'Bob', 23, 85.3) (u'Alice', 28, 91.2) (u'John', 33, 79.5)]

在示例代码中,首先使用np.dtype创建一个dtype对象,用于定义表格中的每一列的属性(名字、数据类型)。然后,使用np.zeros创建一个记录数组,指定数组的形状为(3,)即三条记录,每一条记录的字段类型为我们定义的dtype对象。最后,可以通过与上例中相同的方法将数据赋值给记录数组,即通过字段名进行切片操作,最后打印记录数组。

方法二:使用pandas库创建表格

pandas库是用于数据分析以及数据处理的Python库。pandas库的核心是DataFrame数据结构, 它是一个二维带标记的数据结构,每一列(也就是数据表格中的属性)可以是不同的数据类型,所以就类似于数据库中的表格,适用于更加方便的数据分析和数据处理。

示例代码:

import pandas as pd

# 创建一个由三个字段(列)组成的字典
data = {'name': ['Bob', 'Alice', 'John'],
        'age': [23, 28, 33],
        'score': [85.3, 91.2, 79.5]}

# 将字典转化成DataFrame对象
df = pd.DataFrame(data)

# 打印DataFrame对象
print(df)

输出结果为:

    name  age  score
0    Bob   23   85.3
1  Alice   28   91.2
2   John   33   79.5

在示例代码中,首先创建了一个由三个字段(列)组成的字典对象,然后将字典对象转化成DataFrame对象。最后打印DataFrame对象。

以上就是Python创建表格的两种方法实例,分别使用了numpy.records和pandas库来实现。