首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我正在尝试从csv文件创建一个表,为我提供一个变量的比例

我正在尝试从csv文件创建一个表,为我提供一个变量的比例
EN

Stack Overflow用户
提问于 2021-03-24 03:46:49
回答 2查看 26关注 0票数 0

下面的代码是我所拥有的,但它抛出了一段代码,说明没有要聚合的数值类型。代码:

代码语言:javascript
复制
import pandas
import numpy as np
link = 'https://raw.githubusercontent.com/dvanderelst-python-class/python-class/spring2021/assignment_data/young_people_survey.csv'
data = pandas.read_csv(link,index_col=0)

data.groupby(['Age','Smoking']).agg(np.mean)
table = pandas.pivot_table(data, index= ['Age'], columns=None, values=['Smoking'],
aggfunc={'Smoking':[np.mean]},fill_value=0)

我正在尝试获得一个如下所示的表:表应该是什么样子的示例1:https://i.stack.imgur.com/4Li38.png

我在pandas中运行时得到的错误消息是:Error message

EN

回答 2

Stack Overflow用户

发布于 2021-03-24 03:57:31

在groupby中,您说明了要分组的列(年龄和吸烟),但没有说明要计算平均值的列。当它试图用“never smoked”值计算“Smoking”列的平均值时,“former”表示这不是一个数字列。

如果您将groupby更改为

代码语言:javascript
复制
data.groupby(['Age','Smoking']).agg({'Height': 'mean', 'Weight': 'mean'})

您将获得每个年龄和吸烟类别组合的平均身高和体重

票数 0
EN

Stack Overflow用户

发布于 2021-03-24 04:09:37

代码语言:javascript
复制
import pandas
import numpy as np
link = 'https://raw.githubusercontent.com/dvanderelst-python-class/python-class/spring2021/assignment_data/young_people_survey.csv'
data = pandas.read_csv(link,index_col=0)
data['Age'] = data['Age'].astype(float)
data.groupby(['Age','Smoking']).agg(np.mean)
table = pandas.pivot_table(data, index= ['Age'])

这将给出一个如下表

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66770281

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档