列表理解中的多条件语句

2024-09-30 01:24:09 发布

您现在位置:Python中文网/ 问答频道 /正文

这是我的代码,我想知道是否可以使用列表理解来执行相同的操作(计算行中的集群,并输出长度为df.shape[0]的列表)。同一个集群编号至少有两行,但可以多行,并且可以循环。我试过了,但没能弄明白。 有什么建议吗

我的代码:

    import pandas as pd

    cluster_global = 0
    cluster_relativo = 0
    cluster_index = []
    for index, row in df.iterrows():
        if row['cluster'] == cluster_relativo:
            cluster_index.append(cluster_global)
        elif row['cluster'] == (cluster_relativo + 1):
            cluster_global += 1
            cluster_relativo += 1
            cluster_index.append(cluster_global)
        elif row['cluster'] == 0:
            cluster_global += 1
            cluster_relativo = 0
            cluster_index.append(cluster_global)

数据帧看起来像

^{tb1}$

Tags: 代码importdf列表index集群global建议

热门问题