Pandas中如何对指定的定类数据的各类进行指定的定量中位数处理,接着根据每个类别和对应的中位数建立新的pandas
时间: 2024-03-04 20:48:44 浏览: 43
要对 Pandas 数据框中的指定分类数据进行定量中位数处理,并根据每个类别和对应的中位数建立新的 Pandas 数据框,可以使用 Pandas 库的 `groupby()` 方法和 `median()` 方法。下面是一个例子:
```python
import pandas as pd
# 创建一个数据框
df = pd.DataFrame({
'name': ['Alice', 'Bob', 'Charlie', 'David', 'Emily', 'Frank'],
'gender': ['female', 'male', 'male', 'male', 'female', 'male'],
'age': [25, 20, 30, 18, 22, 28],
'salary': [5000, 4000, 6000, 3500, 4500, 7000]
})
# 对 'gender' 列进行分组,并计算每个分组的 'salary' 列的中位数
median_salary = df.groupby('gender')['salary'].median()
# 建立新的数据框,包含每个类别和对应的中位数
df_median = pd.DataFrame({
'gender': median_salary.index,
'median_salary': median_salary.values
})
print(df_median)
```
输出结果如下:
```
gender median_salary
0 female 4750
1 male 5000
```
在上面的例子中,我们首先创建了一个数据框 `df`,然后使用 `groupby()` 方法对 `gender` 列进行分组,接着使用 `median()` 方法计算每个分组的 `salary` 列的中位数,并将结果存储在 `median_salary` 变量中。接着,我们使用 `pd.DataFrame()` 函数建立一个新的数据框 `df_median`,包含每个类别和对应的中位数,最后输出整个数据框 `df_median`。
在此例中,我们对 `gender` 列进行了分组,在每个分组中计算了 `salary` 列的中位数,并将每个类别和对应的中位数存储在了一个新的数据框 `df_median` 中。
阅读全文