用函数创建DataFrame:使用字典推导式

佚名 / 2024-10-09 / 原文


import pandas as pd

def make_df(cols, ind):
    """一个简单的DataFrame"""
    # 字典推导式,为每列生成数据
    data = {c: [str(c) + str(i) for i in ind] for c in cols}
    # 创建并返回 DataFrame
    return pd.DataFrame(data, ind)

# DataFrame 示例
df = make_df('ABC', range(3))
print(df)

这段代码定义了一个名为 make_df 的函数,它接受两个参数:cols 和 ind。cols 是一个字符串,表示 DataFrame 的列名,ind 是一个可迭代对象,表示 DataFrame 的索引。

函数的主体是一个字典推导式,它为每列生成一个数据列表。每个元素是列名和索引值的组合。然后,它使用这个字典和提供的索引来创建并返回一个 DataFrame。

在这个示例中,cols 参数是 'ABC',它包含三个列名(A、B、C)。ind 参数是 range(3),它生成一个从 0 到 2 的索引列表。

运行这段代码后,你会得到以下输出:

   A   B   C
0  A0  B0  C0
1  A1  B1  C1
2  A2  B2  C2

每一列的数据是由列名和索引值组合而成的字符串。例如,在第一行,A 列的值是 'A0',B 列的值是 'B0',C 列的值是 'C0'。