【发布时间】:2018-03-14 12:45:25
【问题描述】:
我的代码是:
import pandas as pd
import matplotlib.pyplot as plt
from matplotlib import style
df=pd.read_csv("patient1.csv")
a=df.loc[df.Age<18,['Age']]
print(a)
b=df.loc[(df.Age >= 18) & (df.Age < 60),['Age']]
print(b)
c=df.loc[df.Age>=60,['Age']]
print(c)
d=pd.concat([a,b,c],keys=["0-17","18-59","60+"])
e=d.loc[:,['Age']]
print(e)
文件 patient1.csv 包含以下数据:
Name Surname Age
fdgf bcbb 21
Yash Singhvi 19
Yash Singhvi 19
piyush daga 20
cvcv dfg 16
sdsd sdsd 65
dsfef fedf 12
rfef fefe 70
fdgf rgd 10
实际上,我想绘制 0-17,18-59,60+ 岁患者的饼图。从代码中可以看出,我已经将不同年龄范围的数据框进行了分离。我需要在代码中添加什么来绘制饼图?
【问题讨论】:
-
我有点困惑——你需要什么情节?每个范围的总和或平均值?还是别的什么?
-
我想在饼图上绘制 0-17,18-59,60+ 范围内的年龄。
-
我明白,但我想念它的逻辑。因为显然每个范围只需要一个值...
-
这就是我想要的绘图方式:- drive.google.com/…
-
好的,这就是我所说的 - 只需要 3 个数字,每个范围一个。
标签: python pandas csv matplotlib dataframe