美文网首页
python对一列数据合并几个连续相同数据

python对一列数据合并几个连续相同数据

作者: 丙吉 | 来源:发表于2022-03-31 09:35 被阅读0次

原由,想对一列数据中,连续的相同的数据进行合并

1。 先对连续相同的数据进行标注
def data_flag(x):
    l = []
    j = 0
    for i in range(len(x)-1):
        l.append(j)
        if x[i]!=x[i+1]:
            j+=1
    l.append(j)
        
    return l
            
tmp_df = pd.DataFrame({'colname':['a','b','c','c','c','e','d','d','e']})
tmp_list = data_flag(tmp_df.colname)
tmp_df['data_flag'] =tmp_list
tmp_df
结果为:
image.png
2。再对所形成的列进行分组
tmp_df_g = tmp_df.groupby('data_flag').agg({'colname':lambda x: np.unique(x)}).reset_index(drop=True)
tmp_df_g

聚合后,可以做求和,取唯一等各种操作。


image.png

相关文章

网友评论

      本文标题:python对一列数据合并几个连续相同数据

      本文链接:https://www.haomeiwen.com/subject/ebqwjrtx.html