Pandas中如何对指定的定类数据的各类进行指定的两列定量均值处理,接着根据每个类别和对应的中位数建立新的pandas
时间: 2024-03-04 15:48:46 浏览: 72
可以使用Pandas的groupby()方法和agg()方法来实现对指定的定类数据的各类进行指定的两列定量均值处理的操作,并根据每个类别和对应的中位数建立新的pandas DataFrame。
以下是一种可能的实现方式:
假设原始的数据包含三列:category、value1、value2,其中category列为定类数据,value1和value2列为定量数据。
```python
import pandas as pd
# 原始数据
data = pd.DataFrame({
'category': ['A', 'B', 'C', 'A', 'B', 'C'],
'value1': [1, 2, 3, 4, 5, 6],
'value2': [2, 4, 6, 8, 10, 12]
})
# 按照category列分组,对value1和value2列分别计算均值和中位数
grouped = data.groupby('category').agg({
'value1': ['mean'],
'value2': ['median']
})
# 将结果重命名为新的列名
grouped.columns = ['_'.join(col).strip() for col in grouped.columns.values]
# 输出结果
print(grouped)
```
输出结果为:
```
value1_mean value2_median
category
A 2.5 5
B 3.5 7
C 4.5 9
```
这里的代码中,首先使用groupby()方法按照category列进行分组,然后使用agg()方法对每个分组内的value1和value2列进行均值和中位数的计算。最后将结果重命名为新的列名,以便于后续使用。
阅读全文