根据相同的交易编号制作列表

问题描述 投票:0回答:1

我们有一个包含不同交易的大数据框,其中一列是交易编号(rq_id)。我想将所有具有相同交易编号的列放在一个列表中,如何做到这一点? sample of dataframe

将所有具有相同交易编号的列放在一个列表中 如何做到这一点?

list bigdata
1个回答
0
投票

要根据公共交易编号(rq_id)对 DataFrame 中的数据进行分组,并将具有相同交易编号的所有列放入一个列表中,可以使用 Python pandas 库。具体方法如下:

假设您有一个名为 df 的 DataFrame,并且您想按 'rq_id' 列对数据进行分组,您可以使用 groupby 函数并应用为每个组创建列表。这是一个例子:

import pandas as pd

# Sample DataFrame
data = {
    'rq_id': [1, 1, 2, 2, 3],
    'col1': ['A', 'B', 'C', 'D', 'E'],
    'col2': ['X', 'Y', 'Z', 'W', 'V']
}

df = pd.DataFrame(data)

# Group the data by 'rq_id' and collect each group's data into a list
grouped = df.groupby('rq_id').apply(lambda x: x.drop('rq_id', axis=1).values.tolist())

print(grouped)

在此示例中,分组将是一个 pandas 系列,其中每个条目包含来自具有相同“rq_id”的相应组的值列表。在将数据转换为列表以获取列表列表之前,使用 x.drop('rq_id', axis=1) 删除 'rq_id' 列。

请调整此代码以匹配您的实际 DataFrame 和列名称。生成的分组系列将包含与相同“rq_id”关联的数据列表。

© www.soinside.com 2019 - 2024. All rights reserved.