如何将Python元组转换为DataFrame

2,893 阅读2分钟

Python 中的 List 有一个任意对象的集合。Tuple有一个有序的对象集合。图元是用小括号 (( )) 而不是方括号 ([ ]) 来表示项目的。与列表 不同,图元是不可变的。Pandas DataFrame是一个二维的、大小可变的、异质的表格数据结构,包含行和列。

Python元组到DataFrame

Python 元组 转换DataFrame,使用pd.DataFrame()构造函数,它接受一个元组作为参数,并返回一个DataFrame 。DataFrame需要行和列,我们可以手动提供列名,但是我们需要数据来创建行。

为了创建行,我们将使用图元的列表,因此我们将从图元中创建一个DataFrame。

import pandas as pd

data = [('Facebook', 750, True),
        ('Alphabet', 1100, True),
        ('Amazon', 1700, True),
        ('Apple', 2100, False),
        ('Microsoft', 1750, False)]

df = pd.DataFrame(data, columns=['Name', 'M-cap', 'Internet Companies'])

print(df)

输出

        Name  M-cap  Internet Companies
0   Facebook    750                True
1   Alphabet   1100                True
2     Amazon   1700                True
3      Apple   2100               False
4  Microsoft   1750               False

首先,我们导入了Pandas模块,然后定义了一个图元列表,然后把这个图元列表传递给DataFrame构造函数,除了列,它还返回了DataFrame

使用from_records()方法来创建一个DataFrame

Pandas from_records()是一个库方法,可以从结构化的ndarray、图元、字典或DataFrame创建一个DataFrame对象。

import pandas as pd

data = [('Facebook', 750, True),
        ('Alphabet', 1100, True),
        ('Amazon', 1700, True),
        ('Apple', 2100, False),
        ('Microsoft', 1750, False)]

df = pd.DataFrame.from_records(
    data, columns=['Name', 'M-cap', 'Internet Companies'])
print(df)

输出

        Name  M-cap  Internet Companies
0   Facebook    750                True
1   Alphabet   1100                True
2     Amazon   1700                True
3      Apple   2100               False
4  Microsoft   1750               False

在这个例子中,我们使用pandas的**from_records()**方法并传递数据和列,它返回DataFrame。

将Python的元组转换为DataFrame

要在Python一个图元图元转换成DataFrame,要把一个图元的图元转换成一个图元的列表,使用DataFrame构造函数把图元的列表转换成DataFrame。

import pandas as pd

data = (('Facebook', 750, True),
        ('Alphabet', 1100, True),
        ('Amazon', 1700, True),
        ('Apple', 2100, False),
        ('Microsoft', 1750, False))

dataList = list(data)

df = pd.DataFrame(
    dataList, columns=['Name', 'M-cap', 'Internet Companies'])
print(df)

输出

        Name  M-cap  Internet Companies
0   Facebook    750                True
1   Alphabet   1100                True
2     Amazon   1700                True
3      Apple   2100               False
4  Microsoft   1750               False

我们就得到了准确的DataFrame。将列表转换为 DataFrame 是一个简单的任务,所以如果我们以某种方式将任何数据类型转换为列表,从列表中创建一个 DataFrame 将是很简单的。

这就是将 Python Tuple 转换为 DataFrame 的过程。