我是一个R用户,正在学习Python,并尝试用Python创建聚合数据集,就像我在R或SQL中所做的那样。然而,Python的行为与我预期的不同--我不确定如何创建工作所需格式的数据集。
- R**
library(dplyr)
# Create sample data
team <- c("Red Sox", "Red Sox", "Red Sox", "Red Sox", "Red Sox", "Red Sox", "Yankees", "Yankees", "Yankees", "Yankees", "Yankees", "Yankees")
pos <- c("Pitcher", "Pitcher", "Pitcher", "Not Pitcher", "Not Pitcher", "Not Pitcher", "Pitcher", "Pitcher", "Pitcher", "Not Pitcher", "Not Pitcher", "Not Pitcher")
age <- c(24, 28, 40, 22, 29, 33, 31, 26, 21, 36, 25, 31)
baseball_example <- data.frame(team, pos, age)
average_age_by_team_position <- baseball_example %>% group_by(team, pos) %>% summarise(mean_age = mean(age))
print(average_age_by_team_position)
此输出如下所示:
球队位置平均年龄1红袜不是投手28
2红袜投手30.7 3洋基非投手30.7 4洋基投手26
- 当我尝试在Python中这样做时,分组列看起来不同。这意味着我不能将输出用作进一步分析的基础,也不能导出为csv文件**
- 巨蟒**
x一个一个一个一个x一个一个二个x
团队职位
红袜不是投手洋基不是投手
- 有谁能告诉我们如何创建一个输出类似R的Python代码版本吗?**
谢谢!:)
东尼
1条答案
按热度按时间1mrurvl11#
根据我的问题,我做了更多的研究并找到了答案。看起来这归结于Python如何使用索引。
可以通过重置索引来解决,如下所示:
我在下面的网站上找到了这个:https://jamesrledoux.com/code/group-by-aggregate-pandas