首页 > 解决方案 > 删除包含多个元素的列表(列内)并将其转换为常规列 - Pandas

问题描述

我有看起来像这样的数据框:

 id 
444343                           [2]
50224018                         [7]
4284                             [2]
226818                         [2, 36]
28484                       [29, 15, 52114, 47]
229261                          [20]

这个数据框是这行代码的结果:

df= df.groupby('id').station.unique()

这给了我数据框中每个组的唯一站。现在我需要删除所有具有多个站点的行,并将这一行转换为常规整数。对于具体示例:

 ID                            station
444343                           2
50224018                         7
4284                             2
229261                          20

但我什至无法访问此列,我尝试添加它 name df.columns = ["number_from", "station"],以使用索引访问它.. 没有。-.-

标签: pythonpandas

解决方案


你可以检查transformnunique

df1=df[df.groupby('id').station.transform('nunique')==1].copy()

推荐阅读