从pandas Dataframe groupby对象中获取一系列json/字典,可以通过以下步骤实现:
例如,假设我们有一个名为df的Dataframe,其中包含两列:'category'和'value',我们想根据'category'列进行分组。可以使用以下代码:
grouped = df.groupby('category')
使用agg()函数可以将每个组的数据转换为json/字典。我们可以通过传递一个自定义的函数来实现这个转换。该函数可以访问每个组的数据,并将其转换为所需的格式。
例如,假设我们想将每个组的数据转换为json格式,可以定义一个名为to_json的函数,然后将其应用于groupby对象。以下是一个示例代码:
import json
def to_json(group):
data = {
'category': group['category'].values[0],
'values': group['value'].to_list()
}
return json.dumps(data)
result = grouped.agg(to_json)
在上述代码中,to_json函数接收一个group对象,然后根据需要提取所需的数据,并将其转换为json格式。最后,将转换后的结果应用于groupby对象,并将结果存储在名为result的新Dataframe中。
如果需要将结果存储为字典或JSON文件,可以使用json模块将Dataframe转换为字典/JSON,并将其保存到文件中。
以下是一个示例代码:
result_dict = result.to_dict()
with open('result.json', 'w') as f:
json.dump(result_dict, f)
在上述代码中,使用to_dict()函数将result Dataframe转换为字典,然后使用json.dump()函数将字典保存为result.json文件。
总结: 以上是从pandas Dataframe groupby对象中获取一系列json/字典的步骤。首先使用groupby()函数对Dataframe进行分组操作,然后对groupby对象应用agg()函数,通过自定义函数将每个组的数据转换为json/字典。最后,可以选择将结果存储为字典/JSON文件。
领取专属 10元无门槛券
手把手带您无忧上云