如何解决Python:如何从 DF 中提取将作为索引的列,并且该列是布尔值 0 或 1
我们正在使用这个 df:
import numpy as np
import pandas as pd
import plotly.graph_objects as go
heart_df=pd.read_csv("https://raw.githubusercontent.com/Turgibot/BigData/master/DataSets/heart_d.csv")
我们需要绘制年龄分布上的 TenYearRisk 疾病风险图。 输出应该是这样的:
Yes No
age
32 0.000000 1.000000
33 0.000000 1.000000
34 0.000000 1.000000
35 0.060606 0.939394
36 0.025974 0.974026
我认为我们需要使用 pivot_table 但不知道如何将列拆分为是和否。 我只有这个:
pivot = heart_df.pivot_table(index=heart_df.age,values='TenYearCHD')
输出为:
TenYearCHD
age
32 0.000000
33 0.000000
34 0.000000
35 0.060606
36 0.025974
解决方法
您可以在数据帧上使用 groupby
。
heart_df.groupby('age').mean().TenYearCHD
收益
age
32 0.000000
33 0.000000
34 0.000000
35 0.047619
....
编辑:
要准确获得您想要的结果,请执行以下操作:
hd = heart_df.groupby('age').mean().TenYearCHD
nHd = 1. - hd
pd.DataFrame({'Yes':hd,'No':nHd})
收益
Yes No
age
32 0.000000 1.000000
33 0.000000 1.000000
34 0.000000 1.000000
35 0.047619 0.952381
36 0.035714 0.964286
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。