我需要一些帮助来清理具有多索引的 Dataframe。
看起来像这样
cost
location season
Thorp park autumn £12
srping £13
summer £22
Sea life centre summer £34
spring £43
Alton towers and so on.............
位置和季节是索引列。我想浏览数据并删除所有三个季节都没有“季节”值的位置。所以应该删除“海洋生物中心”。
谁能帮我解决这个问题?
还有另一个问题,我的数据框是通过 groupby 命令创建的,并且没有“成本”列的列名。这是正常的吗?列中有值,只是没有标题。
请您参考如下方法:
选项 1
groupby + count。您可以使用结果为您的数据框编制索引。
df
col
a 1 0
2 1
b 1 3
2 4
3 5
c 2 7
3 8
v = df.groupby(level=0).transform('count').values
df = df[v == 3]
df
col
b 1 3
2 4
3 5
选项 2
groupby + 过滤器。这是 Paul H's idea , 如果他想发布,将删除。
df.groupby(level=0).filter(lambda g: g.count() == 3)
col
b 1 3
2 4
3 5
