【问题标题】:Trouble turning comorbidity data into a table using Python and Pandas使用 Python 和 Pandas 将合并症数据转换为表格时遇到问题
【发布时间】:2019-09-30 18:34:26
【问题描述】:

我正在尝试从 Kaggle 数据集分析合并症的发生,作为一项极客训练练习。我已经能够从数据集中获得所有 15 种发病率。然而,在这一点上,我很难把它变成一个数据框或类似的东西。

此时我的想法集中在使用发病率列表创建一个 15 x 15 的表格。我想用它来创建径向收敛图。但是,我不知道如何填写这张表(或者如果这甚至是正确的方法......)。

有人可以在编码或此表类型的名称方面向我推动正确的方向吗?

原创 Kaggle; https://www.kaggle.com/nih-chest-xrays/data/kernels

到目前为止我的脚本;

#Load data
df = pd.read_csv("Data_Entry_2017.csv")

#Filter data
df_filtered = df.iloc[:, 1:6]
df_filtered = df_filtered.drop(df_filtered.columns[[1,2]],axis=1)


#List findings
df_string = df_filtered['Finding Labels']
df_string.str.strip()

findings = []

for finding in df_string:
    finding = finding.split('|')
    for findingX in finding:
        findings.append(findingX)
findingsSolo = list(set(findings))

#df from findings list
df_findings = pd.DataFrame(columns=findingsSolo, index=findingsSolo)

【问题讨论】:

    标签: python pandas kaggle chord-diagram


    【解决方案1】:

    对于那些遇到我的问题的人,经过一番深思熟虑,我想出了一个解决方案;

    df_findings = pd.DataFrame(columns=findings, index=findings).fillna(0)
    
    for finding in df_string:
        finding = finding.split('|')
        finding.sort()
        if len(finding) > 1:
            col_label = finding[0]
            for row_label in finding[1::]:
                df_findings.loc[row_label,col_label] += 1
    

    【讨论】:

      猜你喜欢
      • 2018-09-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-08-20
      • 1970-01-01
      • 1970-01-01
      • 2021-12-27
      相关资源
      最近更新 更多